拉取镜像
docker pull rabbitmq:3.8-management
创建容器
docker run
-e RABBITMQ_DEFAULT_USER=root
-e RABBITMQ_DEFAULT_PASS=123456
-v mq-plugins:/plugins
–name mq
–hostname mq
-p 15672:15672
-p 5672:5672
-d
rabbitmq:3-management
package cn.itcast.mq; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.amqp.rabbit.core.RabbitTemplate; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.test.context.junit4.SpringRunner; @SpringBootTest @RunWith(SpringRunner.class) public class SpringAmqpTest { @Autowired private RabbitTemplate rabbitTemplate; @Test public void testSimpleQueue() throws InterruptedException { String queueName = "simple.queue"; String message ="哈哈哈"; for (int i = 0; i < 10; i++) { rabbitTemplate.convertAndSend(queueName,message+"【"+i+"】"); System.out.println(message); Thread.sleep(20); } } }
application.yml
logging: pattern: dateformat: MM-dd HH:mm:ss:SSS spring: rabbitmq: host: 192.168.88.130 port: 5672 virtual-host: / username: root password: 123456消费者
@Component public class SpringRabbitListener { @RabbitListener(queues = "simple.queue") public void testSimpleQueue1(String msg) throws InterruptedException { System.out.println("spring 消费者1接收到消息:【" + msg + "】"); Thread.sleep(20); } @RabbitListener(queues = "simple.queue") public void testSimpleQueue2(String msg) throws InterruptedException { System.out.println("spring 消费者2接收到消息:【" + msg + "】"); Thread.sleep(200); }
application.yml
logging: pattern: dateformat: MM-dd HH:mm:ss:SSS spring: rabbitmq: host: 192.168.88.130 port: 5672 virtual-host: / username: root password: 123456 listener: simple: prefetch: 1(能者多劳原则)效果
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)