Spring Cloud Bus支持两款消息中间件:RabbitMQ、Kafka。
一、RabbitMQ实现消息总线
1、RabbitMQ简介
RabbitMQ是实现了高级消息对列协议(AMQP)的开源消息代理软件,它是用高性能、可伸缩而闻名的Erlang语言编写而成的,其集群和故障转移是构建在开放电信平台框架上的。
2、RabbitMQ的基本概念
- Broker:可以理解为消息队列服务器实体,负责接收消息生产者的消息,然后将消息发送至消息接收者或者其他的Broker。
- Exchange:消息交换机,是消息第一个到达的地方,消息通过它指定的路由规则,分发到不同的消息队列中去。
- Queue:消息队列,消息通过发送和路由之后最终到达的地方。
- Binding:绑定,作用是吧Exchange和Queue按照路由规则绑定起来。
- Routing Key:路由关键字,Exchange根据这个关键字进行消息投递。
- Virtual host:虚拟主机,他是对Broker的虚拟划分,将消费者、生产这和他们依赖的AMQP相关结构进行隔离,一般是为了安全考虑。
- Connection:连接,代表生产者、消费者、Broker之间惊喜通信的物理网络。
- Channel:消息通道,用于连接生产者和消费者的逻辑结构。
- Producer:消息生产者
- Consumer:消息消费者
3、安装RabbitMQ
http://blog.csdn.net/u012343297/article/details/78874237
4、RabbitMQ下创建user: springcloud/springcloud
5、分配权限
6、创建springboot项目SpringCloud-RabbitMq项目
7、pom中添加依赖
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>tes