Spring Cloud Stream概述:
springcloud stream中文指导手册:https://m.wang1314.com/doc/webapp/topic/20971999.html
或者这个:https://blog.csdn.net/qq_32734365/article/details/81413218
官网参考文档3.0.12发布版:https://docs.spring.io/spring-cloud-stream/docs/3.0.12.RELEASE/reference/html/
Spring Cloud Stream是一个框架,用于构建与共享消息传递系统相连接的高度可伸缩的事件驱动微服务。
该框架提供了一个灵活的编程模型,该模型建立在已经建立和熟悉的Spring习惯用法和最佳实践之上,包括对持久发布/订阅语义、消费者组和 有状态分区的支持。
绑定器的实现:
Spring Cloud Stream支持各种绑定器实现
Spring Cloud Stream的核心构建块是:
- 目标Binders: 负责提供与外部消息传递系统集成的组件。
- 目标Bindings: 外部消息传递系统和最终用户提供的应用程序代码(生产者/消费者)之间的桥梁。
- 消息: 生产者和消费者用来与目标绑定器(以及通过外部消息传递系统与其他应用程序)通信的规范数据结构。
SpringCloud Stream版本对应关系:
一、消息驱动概述:
subscription :订阅
subscrible :动词订阅
为什么要需要Stream呢? Stream的使用场景
a: 异步(消息的发送方, 只需要发送一条消息出去, 就可以不管了, 至于怎处理, 则交给消息的订阅者去处理)
b: 流量削峰(**宝, **东大的电商平台, 需要stream去做削峰)
d: 应用解耦(发布者和订阅者相互间解耦)
d: 日志处理
作者:rommy020
链接:https://www.jianshu.com/p/404fc32122d1
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
绑定器:
stream的架构图:
stream中消息通信方式:发布-订阅
二、案例说明:
pom:
yml:
和eureka:
(4)主启动类:com.fan.springcloud.StreamMQMain8801
(5)业务类:
service.IMessageProvider
测试:
消息驱动之消费者:
pom:
yml:
主启动类:com.fan.springcloud.StreamMQMain8802
controller:
sink:接收点,
source:源头,来源
测试:启动三个微服务:
分组消费和持久化: