1. 程式人生 > 其它 >17.springcloud Stream訊息驅動

17.springcloud Stream訊息驅動

1.簡介

訊息驅動:遮蔽底層資訊中介軟體的差異,降低切換成本,統一訊息的程式設計模型

什麼是SpringCloundStream
    官方定義Spring Cloud Stream這一個構建訊息驅動微服務的框架
    應用程式通過inputs或者outputs域Spring Cloud Stream中的binder物件互動
    通過我們配置來binding(繫結),而spring cloud stream的binder負責與訊息中介軟體互動
    所以,我們只需要搞清楚如何域spring cloud stream互動就方便使用訊息驅動的方式

通過使用spring Intergration來連線訊息中介軟體以實現訊息事件驅動。

spring cloud stream 為一些供應商的訊息中介軟體產品提供了個性化的自動化配置實現,引用了釋出-訂閱、消費組、分割槽的三個核心概念

目前只支援:kafka、rabbitMq

2.設計思想

Stream中的訊息通訊方式遵循了釋出-訂閱模式。
    主題進行廣播:
        1.在RabbitMq就是Exchange
        2.在kafka中就是Topic

3.spring cloud Stream標準流程套路

1.Binder:很方便的連線中介軟體,遮蔽差異
2.Channel:通道,是佇列Queue的一種抽象,在訊息通訊系統中就是實現儲存和轉發的媒介,通過Channel對佇列進行配置。
3.Source和Sink:簡單的可以理解為參照物件是Spring Cloud Stream本身,從Stream釋出訊息就是輸出,接受訊息就是輸入.

4.Spring Cloud Stream的常用註解