集成RabbitMQ+MQ常用操作

集成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)路由🔀
-消息确认机制✅
-持久化消息💾
-死信队列⚰️
-集群部署🖥️🖥️🖥️

通过合理使用这些特性,可以构建出高效可靠的分布式消息系统!🎯

相关推荐
大学生资源网14 分钟前
基于springboot的万亩助农网站的设计与实现源代码(源码+文档)
java·spring boot·后端·mysql·毕业设计·源码
小严家16 分钟前
Java基础教程大全完整学习路径
java·开发语言·学习
毕设源码-朱学姐16 分钟前
【开题答辩全过程】以 基于Java的电影推荐系统为例,包含答辩的问题和答案
java·开发语言
sheji341622 分钟前
【开题答辩全过程】以 基于SSM的校园新冠疫苗接种信息管理系统为例,包含答辩的问题和答案
java·开发语言
苏三的开发日记23 分钟前
linux端进行kafka集群服务的搭建
后端
菜鸟233号23 分钟前
力扣78 子集 java实现
java·数据结构·算法·leetcode
dddaidai12332 分钟前
深入JVM(四):垃圾收集器
java·开发语言·jvm
BBB努力学习程序设计38 分钟前
Java方法(函数)完全指南:初学者的第一个"工具箱"
java
苏三的开发日记41 分钟前
windows系统搭建kafka环境
后端
爬山算法1 小时前
Netty(19)Netty的性能优化手段有哪些?
java·后端