SpringCloud学习笔记RabbitMQ
RabbitMQ是一个开源的消息代理和队列服务器,用来通过插件机制来支持多种消息协议,并且可以支持多种语言的客户端,如Python、Ruby、.NET、Java、JMS、C、PHP、ActionScript、XMPP、STOMP等。
在Spring Cloud中,我们可以使用Spring-AMQP和RabbitMQ来实现消息队列服务。
- 使用RabbitTemplate发送消息
@Autowired
private RabbitTemplate rabbitTemplate;
public void send() {
String context = "hello " + new Date();
System.out.println("Sender : " + context);
this.rabbitTemplate.convertAndSend("hello", context);
}
- 使用@RabbitListener注解创建消息消费者
@RabbitListener(queues = "hello")
public void receive(String content) {
System.out.println("Receiver : " + content);
}
- 使用@EnableRabbit注解开启Spring AMQP功能
@Configuration
@EnableRabbit
public class RabbitConfig {
@Bean
Queue queue() {
return new Queue("hello", true);
}
}
- 使用RabbitMQ实现异步下单
@Autowired
private RabbitTemplate rabbitTemplate;
public void order(){
String context = "hello " + new Date();
System.out.println("Sender : " + context);
this.rabbitTemplate.convertAndSend("order", context);
}
@RabbitListener(queues = "order")
public void receiveOrder(String content) {
System.out.println("Receiver order : " + content);
}
以上代码就是使用Spring Cloud结合RabbitMQ的一个简单示例。
注意:在实际开发中,我们还需要对RabbitMQ的连接、消费者、队列等进行配置,并且要考虑到消息的确认机制、重试机制、持久化等问题,以确保系统的稳定性和可靠性。
评论已关闭