欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費電子書(shū)等14項超值服

開(kāi)通VIP
Selecting an Event Architecture
作者 | Jan Stenberg
譯者 | 蓋磊
標簽 | 事件架構

如果你要設計一個(gè)分布式系統,它可能是基于微服務(wù)的,并且你在考慮采用 事件架構(Event Architecture),那么目前存在多種模型和技術(shù)可供使用。

David Dawson 近期在博客中介紹了多種類(lèi)型的事件架構,并指出:非功能性需求是影響架構選擇的一個(gè)主要因素。

http://daviddawson.me/blog/2017/07/10/styles-of-event-architecture.html

Dawson 是一位自由職業(yè)的系統架構師,他將事件架構簡(jiǎn)單地定義為一種基于事件的軟件架構。鑒于事件也是數據模型的一部分,因此事件架構也是一種數據架構。他強調,事件架構并非定義服務(wù)交互方式的一系列技術(shù)或特定模型。

分階段事件驅動(dòng)架構(SEDA,Staged Event-Driven Architecture)是一種簡(jiǎn)單并很好確立的模型。

SEDA 本質(zhì)上是一個(gè)工作流過(guò)程,其中各個(gè)組件根據自身的處理情況發(fā)出事件去驅動(dòng)整個(gè)過(guò)程,而事件通常使用某種消息總線(xiàn)進(jìn)行傳輸。

Dawson 指出,SEDA 模型的一個(gè)重要問(wèn)題是事件的生存期很短,因而在會(huì )在傳輸或組件離線(xiàn)過(guò)程中丟失。因此與其讓系統采納最終一致性,不如實(shí)現一種 Dawson 所稱(chēng)的“期許一致性”(Hopeful Consistency)。

只要所有組件工作正常,系統就是一致的。一旦有組件崩潰,那么最終將會(huì )得到不一致的系統,這時(shí)必須做手工恢復去回到一致性狀態(tài)。Dawson 稱(chēng)其為“面向實(shí)體的微服務(wù)”,并強烈建議不要采納這種架構。

為重建一致性狀態(tài),Dawson 給出的最優(yōu)解決方案是將事件看作是一種數據,并持久化事件流。這樣我們就可以在任一時(shí)刻重放(Replay)流以恢復狀態(tài),并且借助此得到真正的最終一致性系統。從中我們還可以得到其它一些優(yōu)點(diǎn),例如可以對同一事件流給出多個(gè)視圖。

從 Dawson 的經(jīng)驗來(lái)看,盡管通常稱(chēng)持久化事件流為“事件溯源”,但是他堅信這并非正確的,因為它不是去重建一個(gè)實(shí)體的狀態(tài),而是對不受限實(shí)體集創(chuàng )建視圖。

鑒于此,他更愿意稱(chēng)其為“類(lèi)型流處理”(Style Stream Processing)。他認為 Kafka 正是使用了這樣的架構。Kafka 客戶(hù)按流的順序依次讀取事件,但在重放事件時(shí)可以從頭開(kāi)始,或是從所需的特定事件處開(kāi)始。

用 DDD 的術(shù)語(yǔ)解釋?zhuān)酆希╝ggregate)是 處于一致性范疇內的一系列實(shí)體。通過(guò)對一個(gè)聚合的所有更改發(fā)出和持久化事件,并通過(guò)重放而獲取的同一事件而構建同一聚合的狀態(tài),我們可以得到經(jīng)事件溯源的聚合根,Dawson 稱(chēng)其為“真實(shí)事件溯源”。

Daswon 指出,具有 獨立單一事件流 在重建聚合過(guò)程中是非常重要的。對于創(chuàng )建視圖等其它一些需求,必須要創(chuàng )建獨立的流。

為輔助構建基于事件架構模型的系統,Dawson 創(chuàng )建了 Muon Stack 項目。

https://github.com/muoncore/stack-event

它是一系列面向消息和事件的軟件庫和服務(wù),用于構建分布式系統。其中包括了一個(gè)事件流 API 客戶(hù)端,以及一個(gè)名為“Photon”的事件存儲。目前他正致力于構建 Muon Stack 對 Kafka 的接口。

英文原文傳送

https://www.infoq.com/news/2017/08/selecting-event-architecture

今日薦文

點(diǎn)擊下方圖片即可閱讀

沈劍聊微服務(wù):先做好你的服務(wù)拆分


以上
感謝閱讀  


本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請點(diǎn)擊舉報。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
Staged Event Driven Architecture (SEDA) 介紹
IT規劃:三個(gè)層面,架構是核心
CQRS架構如何實(shí)現高性能
微服務(wù)實(shí)踐(五):微服務(wù)的事件驅動(dòng)數據管理
使用消息系統進(jìn)行微服務(wù)間通訊時(shí),如何保證數據一致性
深入理解嵌入式中重要的編程模型
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導長(cháng)圖 關(guān)注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服

欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久