成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Amazon為何能做到持續交付

網絡 通信技術
Amazon可以讓一個Dev從功能的設計,開發,測試,發布,后續的監控一個人在完成。平均每十幾秒就有一次發布,每天發布好幾千次,保證快速高質量的持續交付。

前段時間去國內一家大型電商公司做交流,正好也回顧了一下Amazon的經歷方便做比對。以下信息應該都是可以公開的。

Amazon可以讓一個Dev從功能的設計,開發,測試,發布,后續的監控一個人在完成。平均每十幾秒就有一次發布,每天發布好幾千次,保證快速高質量的持續交付。

從工程師管理上,主要實行了DevOps。讓每個人有更小更明確的任務,you build it, you run it. 而工具方面這主要得益于一個Build tools的組,他們把Platform和Internal tools做到了功能是和易用性上在界內數一數二。讓Amazon retail那個超級龐大復雜的網站時刻可以被流暢的使用。而這個組做的主要工具有5類:

  1. Brazil Build, 對package進行分發和建立,每次build至少涉及上百個package,可以在幾分鐘甚至幾十秒內完成build并保證不出錯。
  2. Apollo Deployment, 對環境進行管理,比如某一個service上線需要用到哪些package group,依賴有哪些,參數要設置哪些,機器要多少臺etc。按最小的service單元每次也會涉及到在幾十臺host上做deployment。
  3. Code base,所有代碼存放在中央代碼庫,可以按reference,method,keyword之類搜索所有相關代碼。
  4. Monitoring System,對service進行監控,告警,故障分析etc。
  5. Pipeline,把build,test,deploy全部串起來,對整個流程進行監控。大部分操作如rebuild,代碼回滾,停止deploy一鍵操作就可以完成。

與Microsoft相比,Amazon的所有tools全公司統一使用的,更新及時且統一,有專門非常大一個組負責開發維護。而Microsoft由于組織架構原因,各個組間code不是互相可見的,做這些tools也各自為戰,你做一套我做一套,精力分散加上code/api等不透明導致online infra做的非常渣。以至于Microsoft想rollback一次得叫上PM,QA,Dev等人一起弄個大動作。而Amazon隨便一個Dev通過Apollo只需one click就可以rollback了。這也導致Microsoft想做daily deployment幾乎不可能,更別說hourly deployment了。

Facebook也有十余年歷史了,但Ops的經驗還相對不足。有時候看Facebook的朋友工作做時用到了一些工具,總體感覺缺乏統一規劃性,deployment tool,monitoring都有,但是還不夠完善。好在工程師們都足夠強,可以依賴工程師的個人素質去解決一些問題。這個一會兒后面再補充幾句。

以Google的人才和技術實力,Internal tools自然也是一樣都不缺,唯一的區別是在易用性上還和Amazon的差一點,當然對于Google的工程師來說,這點區別并不造成太大影響。

剛才說到Facebook和工具還不完善,很多時候要依賴于工程師素質,Google的工具易用性也還可以提高。那么為什么Amazon要把internal tools做的這么強大并且這么產品化呢?按一般公司的想法,內部工具反正給內部用的,能用就行,好不好用,丑不丑,統一不統一都不重要。

這涉及到Amazon的人才戰略。Amazon 90%以上的是初級程序員。來自于校招或1-2年工作經驗。想讓這些人真正發揮出價值有兩條路可以選:

1.花1年培養他們,讓他們對業務能獨當一面。

2.給他們拆分出足夠小足夠簡單的任務,并給出足夠強大的輔助工具,讓他們可以在1-2個月內就能開始發揮全部價值。Amazon顯然選擇了第二種方式(想想當時才入職第二周就開始oncall了,如果沒有強大工具的支持,不可能去解決系統問題的。)顯然第二種方式對工程師是非常不友好的,但從資本的角度出發,這是以低廉的方法***程序的榨取勞動力。這也導致Amazon的turn over rate要高于Google和Facebook。

以前作為工程師,也非常喜歡Google對待工程師的方式,不過后來更多的接觸商業之后覺得Amazon和Uber這樣的公司,哪怕是Facebook這樣的公司,才更像一個正常的商業運作的公司,而Google這種過于理想化的方式更像是在研究所。

那么什么時候公司需要開始重視internal tools呢?按之前Twitter一名工程師分析的結論(文章暫時找不到)是當公司工程師團隊超過50人時,internal tools可以開始提升整體團隊的效率和工程質量。上面比較的幾家都是工程師非常強的公司,如果你的公司的工程師強不到那種程度, 利用好工具做好持續發布更尤為重要。

美國大部分公司是很支持并愿意去做internal tools的,而國內由于對工具價值的理解不夠,或者說對長期規劃不足,導致與重視程度也不夠。聽說滴滴每次發個新版還要CEO上臺全體動員,緊張的不行,工程師在發完新版后天天得加班。由此一例可見差距。

責任編輯:武曉燕 來源: 知乎專欄 @繼小駒
相關推薦

2015-10-26 10:34:20

IaaS持續交付

2017-02-27 18:28:45

持續交付部署

2019-06-03 15:30:27

操作系統Android 華為

2017-12-24 21:29:18

OpenShift持續交付集群

2017-02-27 18:50:42

運維持續交付

2017-02-27 18:35:23

集成交付部署

2016-08-05 17:19:37

持續集成持續交付系統運維

2020-03-31 09:53:08

互聯網數據技術

2019-04-30 13:09:30

蘋果微軟KOL

2018-05-05 14:34:57

云計算區塊鏈融合

2017-10-19 09:47:55

容器化微服務集成

2016-12-27 19:26:43

2018-01-05 10:47:59

前端JavascriptWeb

2021-03-31 09:00:00

管道集成工具

2016-01-07 10:29:36

MesosDocker持續交付

2023-05-12 15:07:40

測試開發

2022-04-21 14:43:59

AI數據隱私

2024-11-26 08:36:56

SpringJar機制

2022-11-24 13:36:23

網絡信息

2015-12-11 10:27:50

易維幫助臺/Helpd
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 日韩av免费在线观看 | 一区二区三区亚洲精品国 | 亚洲精品黄色 | 成人国产在线观看 | 天天插天天搞 | 亚洲精品国产精品国自产在线 | 91亚洲精品在线 | 91精品在线播放 | 国产黄色在线观看 | 九九热在线视频观看这里只有精品 | 精品视频亚洲 | 欧美精品在线一区二区三区 | 欧美成人h版在线观看 | 欧美日韩国产三级 | av黄色片 | 亚洲导航深夜福利涩涩屋 | 国产免费看 | 国产欧美日韩 | 男女精品久久 | 国产99久久久久 | 欧美激情一区二区三区 | 欧美成人一区二区三区片免费 | 盗摄精品av一区二区三区 | 99国产精品一区二区三区 | 亚洲一区视频 | 中文字幕不卡在线观看 | www.成人.com| 国产精品欧美一区二区三区 | 中文字幕视频在线 | 在线国产一区二区 | 国产午夜精品福利 | 国产激情精品视频 | 欧美日韩不卡合集视频 | 黄色片网此 | 亚洲精品在线免费观看视频 | 色偷偷人人澡人人爽人人模 | 日日操网站 | 99精品久久 | 国产精品久久久亚洲 | 青青99 | 日韩福利|