日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網(wǎng)為廣大站長提供免費(fèi)收錄網(wǎng)站服務(wù),提交前請做好本站友鏈:【 網(wǎng)站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(wù)(50元/站),

點(diǎn)擊這里在線咨詢客服
新站提交
  • 網(wǎng)站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

我離開 Amazon 已經(jīng)快一年了,來到 Twitter 工作以后,我學(xué)到了很多東西,也意識到了很多事情。

1. 服務(wù)及健康

軟件工程并不局限于為客戶構(gòu)建新的功能,還要確保現(xiàn)有服務(wù)的健康及功能。服務(wù)在性能方面上不應(yīng)該出現(xiàn)倒退現(xiàn)象。這對于維護(hù)客戶的信任非常重要。如果你現(xiàn)有的服務(wù)不能提供相同的 SLA(Service-level agreement,服務(wù)級別協(xié)議),那么客戶為什么還要用你的服務(wù)呢?

維護(hù)服務(wù)的方法有很多種:

  • 隨叫隨到
  • 監(jiān)控
  • 自動化系統(tǒng)
  • 操作規(guī)范化

隨叫隨到(OnCall)是維護(hù)服務(wù)健康的最大因素。如果服務(wù)發(fā)生實時停機(jī)事故,隨叫隨到可以盡快緩解這一情況。否則,事件拖得越久,后果就會越嚴(yán)重。例如,最終用戶的影響可能是無法吸引新用戶,從而導(dǎo)致收入損失。最重要的是永遠(yuǎn)不要危害產(chǎn)品,以免用戶停止使用產(chǎn)品。

當(dāng)內(nèi)部客戶的服務(wù)或工作表現(xiàn)不佳時,他們可以通過通信平臺(如 Slack)發(fā)起呼叫請求。大多數(shù)情況下,隨叫隨到是由監(jiān)控系統(tǒng)傳呼的。監(jiān)控系統(tǒng)允許工程師通過關(guān)鍵指標(biāo)(如成功率、讀寫延遲、流量、內(nèi)存空間等)來跟蹤服務(wù)的性能。因此,隨叫隨到可以全面了解他們的服務(wù)中正在發(fā)生的事情,從而可以更快地調(diào)試問題。

在這些監(jiān)控系統(tǒng)中,可以為關(guān)鍵指標(biāo)設(shè)置一個閾值,當(dāng)超過這個閾值時,隨叫隨到將會被傳呼。然而,這些閾值的設(shè)置,卻有可能是一把雙刃劍。如果閾值設(shè)置不當(dāng)?shù)脑挘丛O(shè)置過低或過高),隨叫隨到可能會被大量傳呼所淹沒。閾值需要設(shè)置為只有在服務(wù)遇到問題時才會突破的值。同樣,工程師也不應(yīng)過于熱心,為每個指標(biāo)設(shè)置一個閾值。你需要警惕的是那些可以采取行動的指標(biāo),這些指標(biāo)如果不能迅速解決的話,可能會產(chǎn)生毀滅性的影響。

減輕隨叫隨到的負(fù)擔(dān)并改善服務(wù)健康狀況的可行解決方案是自動化。如果某個問題不斷地重復(fù)出現(xiàn),并且無需人工干預(yù)即可解決,那么就可以采用自動化。自動化系統(tǒng)可能會產(chǎn)生很大的影響,但如果不實施保障措施,可能會產(chǎn)生不良后果。例如,在重新啟動有狀態(tài)服務(wù)的實例時,不要同時重新啟動所有實例,這一點(diǎn)很重要。

自動化系統(tǒng)甚至可以與監(jiān)控系統(tǒng)集成。只要達(dá)到特定指標(biāo)的閾值,監(jiān)控系統(tǒng)就可以觸發(fā)自動化。

為了防止人工操作造成問題和事故,必須保持高度的操作規(guī)范化。解決這個問題的一種方法是制定一個文檔完整的運(yùn)行手冊,其中列出了每個手動操作的詳細(xì)步驟。最重要的是,另一個團(tuán)隊成員可以驗證操作員的操作過程,特別是在已知操作會導(dǎo)致問題的情況下。

50% 的軟件工程都是維護(hù)服務(wù)的健康。這不是工作中微不足道的一部分。要知道,軟件工程并不僅僅是編寫代碼。

2. 代碼的可持續(xù)性

要確保任何推入的代碼都能靈活地應(yīng)對變化是很重要的,當(dāng)業(yè)務(wù)需求發(fā)生變化時,這一點(diǎn)尤為重要。

使用 DRY 原則

DRY 代表 “Don’t Repeat Yourself”。(不要重復(fù)自己寫的代碼)。同一段代碼不應(yīng)在許多場合重復(fù)。如果你看到這種情況,那么可能需要對其進(jìn)行抽象以避免出現(xiàn)冗余。這樣,如果你需要修改它的邏輯,只需在一個地方修改它即可。

始終測試

始終為你編寫的任何函數(shù)編寫測試用例。引入的任何新特性都不能破壞系統(tǒng)的現(xiàn)有狀態(tài),這一點(diǎn)很重要。測試可能是乏味的,但它將會帶來巨大的回報。

架構(gòu)優(yōu)先

如果在編寫代碼時不考慮架構(gòu),這將會產(chǎn)生滾雪球效應(yīng)。在編寫代碼時,要想想其他服務(wù)將如何與它進(jìn)行交互,將來更新它有多容易,以及如何測試它。編寫代碼的方式應(yīng)該是,如果需要交換一種邏輯,那么放入一個新的邏輯是很容易的。

使用常量

永遠(yuǎn)不要硬編碼。相反,要使用常量。這樣,如果將來需要更新值,只需修改一次,而不是多次。

3. 采取主動

工程師永遠(yuǎn)不應(yīng)該停滯不前。他們應(yīng)該努力成為團(tuán)隊的領(lǐng)導(dǎo)者。為了在你的團(tuán)隊中擴(kuò)大你的影響力,你必須采取主動,并愿意接受你不喜歡的新任務(wù)。優(yōu)秀工程師的標(biāo)志就是他或她能夠在最少的幫助下解決新的挑戰(zhàn)。我已經(jīng)開始更多地參與自己并不熟悉的服務(wù)的代碼評審。我敦促自己對關(guān)于邊緣案例或弱點(diǎn)的技術(shù)設(shè)計文檔進(jìn)行更多的評論。我甚至和我的經(jīng)理談過,讓我參與一些能夠幫助我加強(qiáng)自身弱點(diǎn)的項目。

強(qiáng)迫自己進(jìn)入一個新領(lǐng)域,并不是你唯一應(yīng)該做的事情。你還需要提前考慮團(tuán)隊將面臨哪些挑戰(zhàn),以及如何應(yīng)對這些挑戰(zhàn)。在它成為一個真正的問題之前,一定要提前考慮并及早解決。積極主動是我目前正在學(xué)習(xí)的一項技能。希望通過對這些技能和目標(biāo)的努力,我能夠在下一階段取得更好的成績。

在過去的一年來我學(xué)到了很多,我希望在未來的幾年里能學(xué)到更多。

作者介紹:

Yen Huang,Twitter 軟件工程師,曾在 Amazon 工作。畢業(yè)于康奈爾大學(xué)。

原文鏈接:

https://towardsdatascience.com/3-things-i-learned-as-an-engineer-at-twitter-fe9ac352f2eb

分享到:
標(biāo)簽:Twitter
用戶無頭像

網(wǎng)友整理

注冊時間:

網(wǎng)站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網(wǎng)站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網(wǎng)站吧!
最新入駐小程序

數(shù)獨(dú)大挑戰(zhàn)2018-06-03

數(shù)獨(dú)一種數(shù)學(xué)游戲,玩家需要根據(jù)9

答題星2018-06-03

您可以通過答題星輕松地創(chuàng)建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學(xué)四六

運(yùn)動步數(shù)有氧達(dá)人2018-06-03

記錄運(yùn)動步數(shù),積累氧氣值。還可偷

每日養(yǎng)生app2018-06-03

每日養(yǎng)生,天天健康

體育訓(xùn)練成績評定2018-06-03

通用課目體育訓(xùn)練成績評定