這期內(nèi)容當(dāng)中小編將會給大家?guī)碛嘘P(guān)eBay如何通過事件溯源實現(xiàn)持續(xù)交付,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
目前成都創(chuàng)新互聯(lián)已為成百上千家的企業(yè)提供了網(wǎng)站建設(shè)、域名、雅安服務(wù)器托管、網(wǎng)站托管、企業(yè)網(wǎng)站設(shè)計、永定網(wǎng)站維護(hù)等服務(wù),公司將堅持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。
eBay的持續(xù)交付團(tuán)隊通過使用以事件為中心的方法構(gòu)建了一個可以持續(xù)交付的編配器,具備故障彈性和伸縮性,以便處理eBay構(gòu)建管道中不斷增加的負(fù)載。John Long和Nataraj Sundar在兩篇博文中描述了事件溯源的好處以及在實際應(yīng)用程序開發(fā)當(dāng)中所具備的優(yōu)勢。
Long和Sundar都是eBay的員工,他們指出,事件溯源背后的想法在很多領(lǐng)域已經(jīng)存在了很長一段時間。例如,在金融會計中,每個條目都以不可變的方式記錄下來,并且通過相加所有相關(guān)條目來計算當(dāng)前余額。當(dāng)發(fā)生錯誤時,追加新的補償條目,而不是擦除錯誤的條目。他們認(rèn)為,事件溯源與開發(fā)管道中的代碼進(jìn)度有著天然的相識點。
企業(yè)持續(xù)交付(ECD)實現(xiàn)了事件溯源。這是一個編配器,用于協(xié)調(diào)、定義和觀察部署管道,并被用在許多內(nèi)部系統(tǒng)中。部署管道通過拉取請求、構(gòu)建、測試和部署的方式來移動代碼。管道執(zhí)行服務(wù)(PES)是ECD的一個組件,一種運行和跟蹤管道的服務(wù),它負(fù)責(zé)將狀態(tài)報告給GitHub。這個組件使用Scala開發(fā),并使用了actor模型框架Akka。
除了事件溯源的一般性好處之外,Long和Sundar還指出了他們在PES中使用事件溯源的三個主要原因:
?并發(fā)。在過去,同時從管道的不同部分收到的事件之間具有竟態(tài)條件,而以串行的方式處理每個事件可以更輕松地解決并發(fā)問題。
?調(diào)試和可追溯性。由于他們是個小團(tuán)隊,同時要支持許多管道,因此能夠快速找到故障原因并修復(fù)它們對他們來說至關(guān)重要。
?清晰度和正確性。編配對于公司來說至關(guān)重要,并且可能會變得非常復(fù)雜,因此他們需要高質(zhì)量和簡單且易于理解的代碼庫。將代碼拆分成幾個部分,記錄傳入的信息,計算最終模型并對模型變化做出反應(yīng),這種方式可以幫助他們實現(xiàn)上述的目的。
選擇事件溯源最大的原因是最后一點——清晰度和正確性。Long和Sundar認(rèn)為,對于涉及時間和狀態(tài)的復(fù)雜系統(tǒng),事件溯源是可行的解決方案。通過精心設(shè)計的模型,可以分別處理流程中的不同部分,從而使流程更易于理解。他們介紹了事件溯源的四個組件,每個組件都很容易理解,也很容易進(jìn)行修改和測試。
?驗證傳入事件,根據(jù)需要創(chuàng)建和存儲相關(guān)內(nèi)部事件。
?按事件插入的順序處理事件,并進(jìn)行適當(dāng)?shù)囊晥D模型更新。
?在處理完事件之后持久化視圖,這樣在進(jìn)行查詢時就不需要加載和重放所有事件。
?根據(jù)狀態(tài)變更做出響應(yīng),并在讀取模型發(fā)生更新時決定該做些什么,然后啟動新actor來執(zhí)行操作。
到目前為止,他們的系統(tǒng)已經(jīng)處理了超過220萬個事件,生成了大約200,000個運行視圖。Long和Sundar表示,事件溯源架構(gòu)對于實現(xiàn)兼容和直觀的解決方案來說至關(guān)重要。
上述就是小編為大家分享的eBay如何通過事件溯源實現(xiàn)持續(xù)交付了,如果剛好有類似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。
當(dāng)前文章:eBay如何通過事件溯源實現(xiàn)持續(xù)交付
文章轉(zhuǎn)載:http://aaarwkj.com/article22/jegpcc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供軟件開發(fā)、動態(tài)網(wǎng)站、、外貿(mào)網(wǎng)站建設(shè)、響應(yīng)式網(wǎng)站、用戶體驗
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)