集成RabbitMQ与MQ常用操作指南🐰⚡️
RabbitMQ作为一款开源消息代理软件,在企业级应用中广泛使用。下面介绍如何集成RabbitMQ以及常用操作。
1.RabbitMQ集成步骤📦
首先需要添加RabbitMQ客户端依赖:
```java
//Maven依赖
com.rabbitmq
amqp-client
5.12.0
```
2.连接RabbitMQ服务器🔌
```java
ConnectionFactoryfactory=newConnectionFactory();
factory.setHost("localhost");
factory.setUsername("guest");
factory.setPassword("guest");
Connectionconnection=factory.newConnection();
Channelchannel=connection.createChannel();
```
3.常用MQ操作🛠️
声明队列
```java
channel.queueDeclare("my_queue",false,false,false,null);
```
发送消息
```java
Stringmessage="HelloRabbitMQ!";
channel.basicPublish("","my_queue",null,message.getBytes());
System.out.println("[x]Sent'"+message+"'");
```
消费消息
```java
DeliverCallbackdeliverCallback=(consumerTag,delivery)->{
StringreceivedMsg=newString(delivery.getBody(),"UTF-8");
System.out.println("[x]Received'"+receivedMsg+"'");
};
channel.basicConsume("my_queue",true,deliverCallback,consumerTag->{});
```
消息确认
```java
channel.basicConsume("my_queue",false,deliverCallback,consumerTag->{});
//处理完消息后手动确认
channel.basicAck(delivery.getEnvelope().getDeliveryTag(),false);
```
4.关闭连接🚪
```java
channel.close();
connection.close();
```
5.高级特性✨
-交换机类型:Direct、Fanout、Topic、Headers
-消息持久化:确保消息不丢失
-QoS设置:控制消费者预取数量
-死信队列:处理失败消息
RabbitMQ的强大功能使其成为构建可靠消息系统的首选工具!💪通过合理使用这些操作,可以构建高效、稳定的消息处理系统。
RabbitMQ作为一款开源消息代理软件,在企业级应用中广泛使用。下面介绍如何集成RabbitMQ以及常用操作。
1.RabbitMQ集成步骤📦
首先需要添加RabbitMQ客户端依赖:
```java
//Maven依赖
com.rabbitmq
amqp-client
5.12.0
```
2.连接RabbitMQ服务器🔌
```java
ConnectionFactoryfactory=newConnectionFactory();
factory.setHost("localhost");
factory.setUsername("guest");
factory.setPassword("guest");
Connectionconnection=factory.newConnection();
Channelchannel=connection.createChannel();
```
3.常用MQ操作🛠️
声明队列
```java
channel.queueDeclare("my_queue",false,false,false,null);
```
发送消息
```java
Stringmessage="HelloRabbitMQ!";
channel.basicPublish("","my_queue",null,message.getBytes());
System.out.println("[x]Sent'"+message+"'");
```
消费消息
```java
DeliverCallbackdeliverCallback=(consumerTag,delivery)->{
StringreceivedMsg=newString(delivery.getBody(),"UTF-8");
System.out.println("[x]Received'"+receivedMsg+"'");
};
channel.basicConsume("my_queue",true,deliverCallback,consumerTag->{});
```
消息确认
```java
channel.basicConsume("my_queue",false,deliverCallback,consumerTag->{});
//处理完消息后手动确认
channel.basicAck(delivery.getEnvelope().getDeliveryTag(),false);
```
4.关闭连接🚪
```java
channel.close();
connection.close();
```
5.高级特性✨
-交换机类型:Direct、Fanout、Topic、Headers
-消息持久化:确保消息不丢失
-QoS设置:控制消费者预取数量
-死信队列:处理失败消息
RabbitMQ的强大功能使其成为构建可靠消息系统的首选工具!💪通过合理使用这些操作,可以构建高效、稳定的消息处理系统。
RabbitMQ集成与操作指南
50万+

被折叠的 条评论
为什么被折叠?



