本篇来自于个人阅读书籍后的总结--有误之处还请大家斧正,谢谢!
Spring Could Stream 介绍
1.关于Stream框架
首先我们为什么要先了解Spring could Stream,它是一个用户构建消息驱动微服务的框架,框架在Spring boot 基础上整合了spring Integration 来连接消息代理中间件.支持多个消息中间件的自定义配置,同时吸收了这些消息中间件的部分概念,如 持久化订阅,消费者分组和分区等等,
目前 Spring could Stream 的绑定器提供 RabbitMQ与Kafka消息中间件的实现
使用Stream 框架我们不必关系如何连接各个消息代理中间件,也不必关心如何进行消息的发送与接收,只需简单配置就可以实现这些功能使我们可以更加专注于业务逻辑的开发.
2.Stream 框架的组成部分
- Stream 框架应用模型
- 绑定器抽象层,可以与消息代理中间件进行绑定,通过绑定器的API可实现插件式的绑定器
- 持久化订阅支持
- 消费者组的支持
- Topic分区支持
3.消息代理中间件(ActiveMQ,RabbitMQ,Kafka)
调用他们的API用来发送,接收消息, 大概如下图
Spring could Stream 在生产与消费者之间加入了一个类似代理的角色直接与消息代理进行交互,使消息生产者与消费者不在需要直接调用各种消息代理框架的API 甚至感受不到消息代理的存在
RabbitMQ 框架
1. Rabbit MQ 和 AMQP
Rabbit MQ 是一个轻量级的消息代理中间件,支持多种消息通信协议,分布式部署,同时支持运行于多个操作系统,具有灵活 高可用等特性,因此 Rabbit MQ广受欢迎
Rabbit MQ支持多种协