1.Springboot默認MQ支持rabbitmq或者kafka
maven引入依賴
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-amqp</artifactId></dependency>
propertis添加配置
#
spring.rabbitmq.host=192.168.68.238
spring.rabbitmq.port=5672
spring.rabbitmq.username=guest
spring.rabbitmq.password=guest
spring.rabbitmq.virtual-host=/#rabbitmq 每次消費1條消息
spring.rabbitmq.listener.simple.prefetch=1
docker啟動服務器
?docker run -it -d --name rabbitmq -p 5672:5672 -p 15672:15672 rabbitmq:4-management
?
打開網頁控制臺http://192.168.68.238:15672/#/queues?默認用戶名密碼都是guest
queue增加一個test
在Exchange:?amq.fanout增加一個綁定test隊列
寫個測試類
@SpringBootTest
class Demo1ApplicationTests {@AutowiredAmqpTemplate rabbitTemplate;@Testvoid contextLoads() {for (int i = 0; i < Integer.MAX_VALUE; i++){// 給amq.fanout交換機發送測試消息rabbitTemplate.convertAndSend("amq.fanout","", "xiaoxi"+i);System.out.println("發送消息:xiaoxi"+i);}}//接收rabbitmq消息@Test@RabbitListener(queues = "test")public void receive(Message message){System.out.println("接收到消息:"+new String(message.getBody()));}
}
啟動生產者
在網頁控制臺能看到大量的消息進入了隊列
同時消費方法被回調
測試成功!