zoukankan      html  css  js  c++  java
  • 3.RabbitMQ 第一个程序

    RabbitMQ消息服务器主要解决应用程序之间异步消息传输问题,传统的MQ分为点对点和主题与订阅,RabbitMQ使用Exchange(交换机)实现更加灵活的消息传递。

    3.RabbitMQ <wbr>第一个程序
    前面介绍过几个概念,RoutingKey,Binding,Queue,Exchange,
    Binding将Exchange和Queue绑定在一起,Exchange是交换机,Queue是消息队列,Exchange的四种类型决定如何将生产者的消息分发到Queue上。
    RoutingKey是路由关键字,生产者根据RoutingKey决定将消息发送到哪个Exchange上,进而由Exchange决定将消息发送到哪个Queue上,消费者就可以从Queue获得消息。
     
    交换机类型Direct
    将符合Routing Key匹配到指定的Exchange,进而到指定的Queue上,类似点对点
    3.RabbitMQ <wbr>第一个程序

    交换机类型Fanout
    忽略Routing Key,将消息发送到所有与Exchange绑定的Queue上,类似广播
    3.RabbitMQ <wbr>第一个程序
    交换机类型Topic
    是根据统配符投递消息
    *匹配一个单词,#匹配一个或多个单词
    3.RabbitMQ <wbr>第一个程序
    交换机类型Headers
    类似Direct,只是不再使用RoutingKey匹配投递,而是使用headers中消息属性匹配Queue
     
    下面的例程是使用Direct类型的交换机
     
    编写消息生产者,需要在生产者中定义或使用Exchange和Queue
    3.RabbitMQ <wbr>第一个程序
    3.RabbitMQ <wbr>第一个程序
    运行后,通过RabbitMQ控制台可以看到
    3.RabbitMQ <wbr>第一个程序
    我们看到消息队列TestQueue中有一条消息。
     
    编写消息消费者,需要在生产者中定义或使用Exchange和Queue
    3.RabbitMQ <wbr>第一个程序
    3.RabbitMQ <wbr>第一个程序
    运行消费者程序后,查看RabbitMQ管理台,发现消息消失了。
     
    3.RabbitMQ <wbr>第一个程序
    Java使用RabbitMQ必须下载RabbitMQ客户端类库,这里使用的是amqp-client-3.2.2.jar版本,为了方便使用类库,还需要下载API amqp-client-3.2.2-javadoc.jar
     
    API解图
    3.RabbitMQ <wbr>第一个程序
     
    这里两个文件,可以通过云盘下载:
    https://pan.baidu.com/s/1miBtbRi
     
     
    程序代码下载
    https://pan.baidu.com/s/1dF4fGOh
     
  • 相关阅读:
    jquery动态生成button的点击事件
    datatable 相关属性翻译
    python程序出现403错误
    相同布局的div层叠,冲突问题解决
    js进阶
    css进阶
    pycharm快捷键及常用设置
    arcgis软件安装相关问题
    将input type="file" 类型的图片文件转成base64
    SpringMVC中的参数绑定总结
  • 原文地址:https://www.cnblogs.com/zzpblogs/p/8168772.html
Copyright © 2011-2022 走看看