(一) 爲什麼要消息傳遞在構建微服務應用程序中很重要
回答這個問題之前,首先介紹一個概念
事件驅動架構(EDA):使用異步消息實現事件之間的通信,也被稱爲消息驅動架構(MDA).
而基於EDA的方法允許開發人員構建高度解耦的系統,它可以對變更做出反應,而不需要與特定的庫或者服務緊密耦合.當與微服務結合之後,.EDA通過讓服務監聽由應用程序發出的事件流(消息)的方式,允許開發人員迅速地嚮應用程序中添加新功能.
也就是說,基於EDA的方法構建的系統具有的高度的解耦性以及擴展性;
(二) Spring Cloud Stream 簡介
1 、Spring Cloud Stream是一個由註解驅動的架構,它允許開發人員在Spring應用程序中構建消息發佈者和消費者
2、Spring Cloud可以通過Spring Cloud Stream將消息傳遞集成到Spring 的微服務中
3、Spring Cloud Stream可以使用多個消息平臺(包括Apache Kafka和RabbitMQ),而平臺的具體實現細節則被排除在應用程序之外.在應用程序中實現消息的發佈和消費是通過平臺無關的Spring接口實現的.