集成RabbitMQ与MQ常用操作指南🚀
RabbitMQ是一个开源的消息代理和队列服务器,用于在分布式系统中存储和转发消息。下面我们将介绍如何集成RabbitMQ以及常用的MQ操作。
1.RabbitMQ集成🛠️
首先,我们需要在项目中添加RabbitMQ的依赖:
```python
Python示例
pipinstallpika
```
```java
//Java示例(Maven)
com.rabbitmq
amqp-client
5.12.0
```
2.连接RabbitMQ🔌
建立与RabbitMQ服务器的连接:
```python
importpika
connection=pika.BlockingConnection(
pika.ConnectionParameters('localhost'))
channel=connection.channel()
```
```java
//Java示例
ConnectionFactoryfactory=newConnectionFactory();
factory.setHost("localhost");
Connectionconnection=factory.newConnection();
Channelchannel=connection.createChannel();
```
3.常用MQ操作⚙️
创建队列📦
```python
channel.queue_declare(queue='hello')
```
```java
channel.queueDeclare("hello",false,false,false,null);
```
发送消息✉️
```python
channel.basic_publish(exchange='',
routing_key='hello',
body='HelloWorld!')
```
```java
channel.basicPublish("","hello",null,"HelloWorld!".getBytes());
```
接收消息📩
```python
defcallback(ch,method,properties,body):
print("[x]Received%r"%body)
channel.basic_consume(queue='hello',
auto_ack=True,
on_message_callback=callback)
```
```java
DeliverCallbackdeliverCallback=(consumerTag,delivery)->{
Stringmessage=newString(delivery.getBody(),"UTF-8");
System.out.println("[x]Received'"+message+"'");
};
channel.basicConsume("hello",true,deliverCallback,consumerTag->{});
```
关闭连接🔚
```python
connection.close()
```
```java
channel.close();
connection.close();
```
4.高级特性🌟
RabbitMQ还支持:
-交换机(Exchange)路由🔀
-消息确认机制✅
-持久化消息💾
-死信队列⚰️
-集群部署🖥️🖥️🖥️
通过合理使用这些特性,可以构建出高效可靠的分布式消息系统!🎯