欧美vvv,亚洲第一成人在线,亚洲成人欧美日韩在线观看,日本猛少妇猛色XXXXX猛叫

新聞資訊

    阿里云消息隊列 5.0 實現了全新升級,實現了從“消息”到“消息、事件、流”的大融合,基于此,-、Event-、 這三個詞是近期消息領域高頻詞,但由于概念過于新,很多同學其實是不太理解這里的異同。本文把三個概念重新整理下,梳理出比較明確的概念講給大家。

    背景

    首先這三個概念具體翻譯如下:

    這三個模式都是類似異步通信的模式,發送消息的服務不會等待消費消息服務響應任何數據,做服務解耦是三個模式共同的特性;

    只要是在服務通訊領域內,在選型時還要考慮如下特性:

    通用背景介紹完,依次來看看各個模型代表的是什么意思。

    消息驅動 -

    在消息驅動通信中,一般鏈路就是消息生產者()向消息消費者()發送消息。模型如下:

    t觸發器是什么沿觸發_t觸發器邏輯功能_功能邏輯架構圖

    ?消息驅動模式下通常會用到中間件,比較常見的中間組件有 ,Kafka, 等。這些中間件的目的是緩存生產者投遞的消息直到消費者準備接收這些消息,以此將兩端系統解耦。

    在消息驅動架構中,消息的格式是基于消費者的需求制定的;消息傳遞可以是一對一,多對多,一對多或多對一。

    消息驅動通訊比較常見的一個例子是商品訂單推送,上游組件負責生成訂單,下游組件負責接收訂單并處理。通過這樣的通訊方式上游生成組件其實無需關心整個訂單的生命周期,更專注于如何快速生成訂單,使單個組件的性能得以提升。

    ?消息驅動模式在服務之間提供了輕的耦合(這部分耦合指代 / SDK),并可以對生產和消費服務根據訴求進行擴展。

    事件驅動 Event-

    首先要申明一個觀點:事件驅動其實是對消息驅動方法的改進,它對消息體大小,消息格式做了較為嚴格的限制,這層基于消息的限制封裝其實就稱為事件(Event)。

    在事件驅動模式中,生產者發布事件來表示系統變更,任何感興趣且有權限接入的服務都可以訂閱這些事件,并將這些事件作為觸發器來啟動某些邏輯/存儲/任務。

    功能邏輯架構圖_t觸發器邏輯功能_t觸發器是什么沿觸發

    ?事件驅動的模式可以是一對一,多對一,一對多或多對多。通常情況下一般是多個目標根據過濾條件執行不同的事件。

    在事件驅動架構中,事件的格式是由生產者根據事件標準協議制定的;由于更規范限制和封裝,事件的生產者完全不需要關心有哪些系統正在消費它生成的事件。

    事件不是命令,事件不會告訴消費者如何處理信息,他們的作用只是告訴消費者此時此刻有個事件發生了;事件是一份不可變的數據,重要的數據,它與消息的數據價值相同;通常情況下當某個事件發生并執行時,往往伴隨著另一個事件的產生。

    事件驅動提供了服務間的最小耦合,并允許生產服務和消費服務根據需求進行擴展;事件驅動可以在不影響現有服務的情況下添加各類新增組件。

    事件驅動也可以舉一個非常貼切的例子,我們以“客戶購買完一款商品”為一個事件,舉證在事件場景的應用:

    這么看,事件驅動模式是不是可以應用并出現在任何地方!

    在 產品化方向,也正是由于針對消息做了一些標準化封裝,才有可能實現譬如針對事件本身的 (過濾) ,(轉換),(事件結構),(查詢) 等能力。這些能力也拓展出更多針對事件驅動特有的場景功能及相關特性。

    流是一組有序的無界事件或數據,執行操作通常是固定的某個事件段(e.g. 00:00 – 12:00)或一個相對事件(E.g. 過去 12 小時)。

    t觸發器是什么沿觸發_t觸發器邏輯功能_功能邏輯架構圖

    ?通常情況下單個事件往往就是使用事件本身,但是對于流可能的操作大概率是過濾,組合,拆分,映射等等。

    流的操作可以是無狀態也可以是有狀態的:

    流這里也可以舉一個比較簡單的例子,比如我們的物流系統在物品通過一個物流節點時會生成一個事件,但是要查到這個物品完整的流轉狀態事件,則必須是各個物流節點單個事件的聚合,那這個聚合事件就是流事件。

    Kafka 是最典型的流式中間件t觸發器邏輯功能,在流式場景中,事件的位置信息至關重要。通常情況下位置信息(E.g. )是由消費者托管的。

    事件規范標準

    聊完 Event 和 是什么,再來補充一點有關于它們的規范。

    事件規范存在的目的是為了清晰事件生產者和消費者的關系,目前主要有兩部分: 和 ;

    :基于事件 API 提供了與之對應的 Open API 和 等;:側重于處理事件的元數據。

    t觸發器是什么沿觸發_功能邏輯架構圖_t觸發器邏輯功能

    下面也重點介紹一些關于 的相關概念參考: 的核心其實是定義了一組關于不同組件間傳輸事件的元數據,以及這些元數據應該如何出現在消息體中。

    其主旨大抵如下:

    準確的事件體,事件信息才可以做出更穩定的系統架構,永遠保持對事件的敬畏。

    附 一些術語及定義:

    :發生,指事件邏輯上的發生,基于某種情況,事件出現了;

    Event:事件t觸發器邏輯功能,表示事件以及上下文的數據記錄。可以根據事件中的信息決定路由,但事件本身并不包含路由信息;

    :生產者,真正創造事件的實例或組件;

    :源,事件發生的上下文,可以由多個 組成;

    :消費者,接收事件并對事件進行消費;

    t觸發器是什么沿觸發_t觸發器邏輯功能_功能邏輯架構圖

    :中介,接收包含事件的消息(),并轉發給下一個接收方,類似路由器;

    :上下文,上下文元數據被封裝到 中,用來判斷事件與其它系統的關系;

    Data:數據,也可以叫做 ;

    :事件格式,例如 json;

    :消息,封裝事件并將其從 傳遞到 ;

    :協議,可以是行業標準如 http,開源協議如 Kafka 或者供應商協議如 AWS ;

    :協議綁定,描述如何通過給定的協議收發事件,如何將事件放到消息里。

    重磅推薦

    本文旨在幫助大家對近期消息領域的高頻詞“消息驅動(-),事件驅動(Event-)和流()”有更清晰的了解和認知,其中事件驅動 EDA 作為 預測的十大技術趨勢之一, 作為下一代消息中間件,也是目前的重點方向之一。

    原文鏈接:301 Moved

網站首頁   |    關于我們   |    公司新聞   |    產品方案   |    用戶案例   |    售后服務   |    合作伙伴   |    人才招聘   |   

友情鏈接: 餐飲加盟

地址:北京市海淀區    電話:010-     郵箱:@126.com

備案號:冀ICP備2024067069號-3 北京科技有限公司版權所有