久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

Etsy是怎么做到每天50次以上部署的

163次閱讀
沒有評論

共計(jì) 1779 個字符,預(yù)計(jì)需要花費(fèi) 5 分鐘才能閱讀完成。

Etsy 是怎么做到每天 50 次以上部署的,針對這個問題,這篇文章詳細(xì)介紹了相對應(yīng)的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

Daniel Schauenberg 在倫敦 QCon 大會上描述了 Etsy 是如何做到每天 50 次部署的。Etsy 以其 DevOps 和持續(xù)交付的實(shí)踐而聞名。一個完全自動化的部署管道、全面的應(yīng)用監(jiān)控和基于 IRC(互聯(lián)網(wǎng)中繼聊天)的協(xié)作是能達(dá)到這個變更頻率的同時又保持最小風(fēng)險的重要因素。

Etsy 的開發(fā)策略是反復(fù)圍繞著做許多小的、連續(xù)的變更。這樣做的一個直接后果就是需要每天做很多次部署。用 Daniel Schauenberg 的話來說,在任何時刻每個 Etsy 的開發(fā)人員都需要知道下面這個問題的答案:“我現(xiàn)在有足夠的信心來部署這個變更嗎?”。為了能夠每次都可以輕松部署,Etsy 采取了一系列的工具和做法:強(qiáng)制基于 IRC 的溝通、開發(fā)者虛擬機(jī)、持續(xù)集成、一鍵式部署、全面的應(yīng)用和系統(tǒng)監(jiān)控、對于開發(fā)和運(yùn)營團(tuán)隊(duì)都采取免責(zé)怪的事后檢查(post-mortem)和隨叫隨到的政策。

每個開發(fā)人員都擁有自己的通過 Chef 配置的 KVM(基于內(nèi)核的虛擬機(jī))。在線上運(yùn)營中使用的 cookbooks 也同樣地用在了開發(fā)人員的虛擬機(jī)中,這意味著每個開發(fā)者都有自己完整的 Etsy 棧。任何人都可以通過 Virtual Madness(一個可以實(shí)現(xiàn)整個過程自動化的 Web 應(yīng)用) 來提供一個虛擬機(jī)。

在持續(xù)集成方面,Daniel 解釋了 Try 是如何成為所有過程的核心。Try 是一個工具,它允許開發(fā)人員在 Jenkins(在 Etsy 中使用的持續(xù)集成工具) 中測試他的代碼變更,而不需要先提交到 trunk 中。Try 有助于保持 trunk 干凈從而實(shí)現(xiàn)可部署,而同時讓開發(fā)人員能夠快速、可靠地測試他們的變更。CI(持續(xù)集成) 集群必須強(qiáng)大到足以支持 150 名工程師,以及每天超過 14000 個測試集的運(yùn)行。LXC(Linux 容器)會平衡工作的負(fù)載,它們還提供了隔離機(jī)制,確保不同測試的執(zhí)行之間不會沖突。

部署管道會經(jīng)過 Princess,或者工作臺,這是一種上線前的環(huán)境。Princess 的所有意圖和目的就是上線環(huán)境,但只有 Etsy 的員工可以訪問它。Deployinator 是由 Etsy 構(gòu)建并使用的部署工具,提供一鍵式部署。

配置標(biāo)志,也被稱為功能標(biāo)志,是部署過程中的一個主要組成部分。通過其功能 API,Etsy 能夠做 A / B 測試,即完全啟用或者禁用某一功能或一個給定功能的變體。

監(jiān)控是 Etsy 團(tuán)隊(duì)建立信心做持續(xù)交付的關(guān)鍵。開發(fā)人員做自己的功能監(jiān)控,而且每個人都可以通過儀表盤看到所有的監(jiān)控圖表。Etsy 具有這樣一個策略,在默認(rèn)情況下所有可以被繪制的信息都會被制成圖表。隨著時間的推移,指標(biāo)的數(shù)量一直穩(wěn)步增加,所以 Etsy 建立了 Kale 來幫助檢測異常模式。所有的日志都可以通過 Supergrep 展現(xiàn)出來,Supergrep 是一個基于 Web 的日志展示工具,這增加了日志的信噪比。

IRC 是貫穿 Etsy 的主要溝通工具,也是 Etsy 協(xié)作文化的關(guān)鍵。里面有很多不同的聊天室,每一個都具有特定目的。例如,在聊天室#warroom 中僅允許中斷事故有關(guān)的會談。聊天室是用來協(xié)調(diào)調(diào)查,討論應(yīng)對措施和解決方案監(jiān)控的。與其他的聊天室一樣,#warroom 是個鼓勵新工程師們潛水的地方,因?yàn)檫@些聊天室被認(rèn)為是學(xué)習(xí)的好地方。

每次中斷發(fā)生,或接近中斷的時候,所有人被邀請來做事后檢查。事后檢查是一個重要的文化活動,如果財(cái)務(wù)和支持人員需要,他們也可以參與。事后檢查是為了成為一個學(xué)習(xí)的機(jī)會,所以它們不應(yīng)該包含責(zé)備。所有事后檢查相關(guān)的信息被記錄在 Morgue 里面:日期、嚴(yán)重性、IRC 日志、圖表和補(bǔ)救措施。Morgue 是 Etsy 為了保存事后檢查記錄而特別構(gòu)建的另一種工具。

對于運(yùn)營、開發(fā)、支付和支持部門的員工都采取隨叫隨到的政策。開發(fā)人員通常輪流地在每四個星期里的某一周提供隨叫隨到的支持。該政策的目的是讓每個人都意識到上線產(chǎn)品每天所面臨的問題,使他們能夠在開發(fā)新功能或改進(jìn)現(xiàn)有流程時考慮到這些問題。

Etsy 擁有約 60 萬的月訪問量和每月 15 億頁面瀏覽量。

關(guān)于 Etsy 是怎么做到每天 50 次以上部署的問題的解答就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關(guān)注丸趣 TV 行業(yè)資訊頻道了解更多相關(guān)知識。

正文完
 
丸趣
版權(quán)聲明:本站原創(chuàng)文章,由 丸趣 2023-08-03發(fā)表,共計(jì)1779字。
轉(zhuǎn)載說明:除特殊說明外本站除技術(shù)相關(guān)以外文章皆由網(wǎng)絡(luò)搜集發(fā)布,轉(zhuǎn)載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 达孜县| 抚远县| 磐石市| 沛县| 南召县| 冀州市| 普定县| 潜山县| 柘城县| 洛川县| 布尔津县| 应用必备| 涡阳县| 宁乡县| 万全县| 绵竹市| 花垣县| 新邵县| 孝义市| 泗水县| 泌阳县| 嵊泗县| 华池县| 翁牛特旗| 泰顺县| 车致| 龙泉市| 克拉玛依市| 南投县| 普格县| 房产| 吉隆县| 上高县| 本溪市| 乌审旗| 吉隆县| 阳东县| 潮州市| 紫云| 贵德县| 弥渡县|