大佬教程收集整理的这篇文章主要介绍了RabbitMQ 快速上手教程 ~,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
为了方便c;采用 Docker
进行安装c;直接从仓库拉取即可(首先要在 Liunx 中安装 Docker 环境)。命令如下:
1、查找 rabbitmq 镜像
docker search rabbitmq:management
2、拉取 rabbitmq 镜像
docker pull macintoshplus/rabbitmq-management
3、创建容器并运行
docker run -d --name rbmq -e RABBITMQ_DEFAULT_USER=guest -e RABBITMQ_DEFAULT_PASS=guest -p 15672:15672 -p 5672:5672 c20
4、访问测试:浏览器输入 http://服务器ip:15672
。注意:阿里云防火墙、Linux 端口都要开放c;才可访问。
输入用户名与密码:都为
guest
登录成功后c;即可看到 rabbitmq 的管理界面。
RabbitMQ 可以很方便地与 SpringBoot 整合。
1、导入 Maven 依赖:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-amqp</artifactId>
</dependency>
2、配置文件中指定 rabbitmq 相关参数:
spring:
application:
name: rabbitmq-demo
rabbitmq:
host: 服务器公网ip
port: 5672
username: guest
password: guest
3、写一个配置类c;将队列注入到 Spring 容器中c;同时定义好队列的名称:
import org.springframework.amqp.core.Queue;
import org.springframework.context.Annotation.Bean;
import org.springframework.context.Annotation.Configuration;
@Configuration
public class QueueConfig {
public static final String QUEUE_NAME = "myQueue";
@Bean
public Queue createQueue() {
return new Queue(QueueConfig.QUEUE_NAME);
}
}
4、消费者处理消息:添加 @RabbitListener
注解并指定要监听的队列名称
import org.springframework.amqp.rabbit.Annotation.RabbitListener;
import org.springframework.stereotype.Component;
@Component
public class Consumer {
@RabbitListener(queues = {QueueConfig.QUEUE_NAME})
public void handle(String msg) {
// 消费者处理接收到的消息
System.out.println("消费者处理消息:" + msg);
}
}
5、生产者发送消息:引入 AmqpTemplate
模板类实现整合
import org.springframework.amqp.core.AmqpTemplate;
import org.springframework.beans.factory.Annotation.Autowired;
import org.springframework.stereotype.Component;
@Component
public class Provider {
@Autowired
private AmqpTemplate template;
public void send(String msg) {
// 生产者发送消息:队列名称,消息内容
template.convertAndSend(QueueConfig.QUEUE_NAME, msg);
}
}
6、启动 SpringBoot 项目c;消费者进入监听状态c;查看 rabbitmq 管理界面如下:
连接数、队列数、消费者数都从 0 变为 1。
还可以查看到我们刚刚定义的队列名称信息:
队列名称为 myQueue
7、JUnit 进行测试:生产者发送消息
import com.study.rbmq.Provider;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.Annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
@SpringBootTest
class SpringbootDockerApplicationTests {
@Autowired
private Provider provider;
@Test
void contextLoads() {
provider.send("RabbitMQ入门案例~");
}
}
运行测试程序c;在 SpringBoot 程序的控制台中可看到如下结果:
生产者发送消息到队列后c;消费者监听到该消息c;对其进行处理。
以上是大佬教程为你收集整理的RabbitMQ 快速上手教程 ~全部内容,希望文章能够帮你解决RabbitMQ 快速上手教程 ~所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。