Offer

SpringCloud-分布式与集群的使用三(RabbitMQ消息总线+视图微服务的结合)

  RabbitMQ:基于erlang语言开发,所以一共要安装erlang + rabbitMQ才行

  启动命令与链接:

  

net stop RabbitMQ
net start RabbitMQ

http://127.0.0.1:15672

 

  RabbitMQ模式(基于AMQP协议)的消息路由过程:

    拿到消息后,先给交换机(Exchange0),再根据不同的绑定策略,来决定发送给哪个队列

        

 

  总共3种Exchange模式(Fanout广播, direct传送给指定队列, Topic主题模式:routing key 就比如匹配算法一样,前缀routing或者后缀key一样就分给他)

下面分别是3种模式的运行结果

 

 

 

 

下面是RabbitMQ管理界面

 ------------------------------------------------------------------------------------------------------------------------------------

  步骤:引入了respo包到自己的github中

https://github.com/Empirefree/springcloudConfig/blob/master/respo/product-view-service-feign-dev.properties

  view-service引入RMQ的依赖(RMQ即是消息总线),当调用actuator/refresh接口时,就是是让消息总线发送更新配置的请求,然后RMQ将消息Fanout广播给使用了该配置的veiw-service微服务,微服务再去服务端config-service拉取配置,整个过程是自动的(有点像ajax)

 

 

 

 

 

 

    

posted @ 2020-04-10 15:36  Empirefree  阅读(746)  评论(0编辑  收藏  举报