RabbitMQ基础系列--客户端开发

 

Ⅰ、高层接口

  • ConnectionFactory
  • Connection
  • Channel
  • Consumor

Ⅱ、操作流程及API

【一】创建连接工厂ConnectionFactory

ConnectionFactory factory = new ConnectionFactory();

​ 我们可以为actory设置各种参数来进行连接初始化

factory.setUsername("guest");//设置服务器登录账号 factory.setPassword("guest");//设置服务器登录密码 factory.setHost("127.0.0.1");//设置服务器IP factory.setPort("15427");//设置服务器端口 factory.setVirtualHost("/");//设置虚拟主机

【二】创建连接Connection

Connection connection = factory.newConnection();

【三】创建信道Channel

Channel channel = connection.createChannel();

知识点:

​ 连接和信道的关系:连接是客户端与服务器开启的TCP连接,由于TCP连接的开启和销毁都需要消耗大量的性能,所以我们在连接的基础上使用了信道的概念,对连接进行逻辑再分,每个连接都可以创建多个信道,这些信道共用一个连接。

​ 信道就是RabbitMQ中最实用的组件了,几乎所有针对交换器、队列、生产者、消费者的操作全部都在这里面执行。

【四】创建交换器Exchange

Exchange.DeclareOK exchangeDeclare(     String exchange, // 声明交换器名称     String type, // 声明交换器类型     boolean durable, // 声明是否持久化     boolean autoDelete, // 声明是否自动删除     boolean internal, // 声明是否内置     Map<String, Object> arguments // 创建交换器的其他参数     ) throws IOException Exchange.DeclareOK exchangeDeclare(     String exchange, // 声明交换器名称     BuiltinExchangeType type, // 声明交换器类型     boolean durable, // 声明是否持久化     boolean autoDelete, // 声明是否自动删除     boolean internal, // 声明是否内置     Map<String, Object> arguments // 创建交换器的其他参数     ) throws IOException

​ 创建交换器的方法有上面两种,这两种的区别仅在于声明交换器的类型type参数的类型不同,第一种常用。其实上面的方法每个都有很多个重载的方法,采用一些默认的参数。这里只列举参数最全的方法,来介绍其各个参数的意义。

知识点:交换器类型

​ RabbitMQ的交换器拥有四种类型,分别为fanoutdirecttopicheadersfanout类型的交换器会将消息路由到所有与其绑定的队列中,类似于广播;

关键字:
50000+
5万行代码练就真实本领
17年
创办于2008年老牌培训机构
1000+
合作企业
98%
就业率

联系我们

电话咨询

0532-85025005

扫码添加微信