SpringAMQP消息队列实战教程
作者:zhyaw56zhu
这篇文章主要介绍了SpringAMQP消息队列的相关知识,本文通过实例代码给大家介绍的非常详细,感兴趣的朋友一起看看吧
安装RabbitMQ
在linux上安装RabbitMQ
,并运行
docker run \ -e RABBITMQ_DEFAULT_USER=zywzy \ -e RABBITMQ_DEFAULT_PASS=123321 \ --name mq \ --hostname mq1 \ -p 15672:15672 \ -p 5672:5672 \ -d \ rabbitmq:3-management
http://ip:15672
访问控制台, 用户名zywzy,密码123321
引入依赖
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-amqp</artifactId> </dependency>
配置文件
spring: rabbitmq: host: 172.27.99.52 # rabbitMQ的ip地址 port: 5672 # 端口 username: abc password: 123321 virtual-host: /
发送消息
@SpringBootTest public class SpringAmqpTest { @Autowired private RabbitTemplate rabbitTemplate; @Test public void testSendMessage2SimpleQueue() { String queueName = "simple.queue"; String message = "hello, spring amqp!"; rabbitTemplate.convertAndSend(queueName, message); } }
消费消息
@RabbitListener(queues = "simple.queue") public void listenWorkQueue1(String msg) throws InterruptedException { System.out.println("消费者1接收到消息:【" + msg + "】" + LocalTime.now()); }
消息预取
每次只能取一条消息,处理完成才能取下一条消息
spring: rabbitmq: listener: simple: prefetch: 1
到此这篇关于SpringAMQP消息队列的文章就介绍到这了,更多相关SpringAMQP消息队列内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!