整个Spring生态中与消息有关的3个项目分别是Spring Framework里的spring-messaging模块、Spring Integration和Spring Cloud Stream项目。
-
spring-messaging模块是定义消息编程模型的基础模块,内部定义了消息(
Message)接口、MessageChannel(消息通道)接口、MessageHandler(消息处理器)接口、@MessageMapping、@Header等WebSocket相关的注解等诸多内容。 -
Spring Integration在spring-messaging的基础上根据Enterprice Integration Patterns(企业集成模式)内消息部分的功能抽象了更多消息的概念,比如:
MessageDispatcher(消息分发器)、Transformer(消息转换器)、Aggregator(消息聚合器)等内容。 -
Spring Cloud Stream在Spring Integration的基础上提出了
Binder、Binding等概念,让开发者能够通过Bean的注入及相关注解,就能轻松地完成消息的发送和订阅来进行业务开发。