MQ
文章平均质量分 55
消息中间件
酷鱼影子
我不是代码的生产者,我只是代码的搬运工
展开
-
RabbitMq进阶——优先队列使用
使用场景在实际业务中,消息有时也要区分优先级,比如定时任务产生的消息和业务请求产生的消息,定时任务的消息可以延迟消费,但是业务消息需要优先处理,避免影响流程。实现方案本人讲述spring boot框架下的实现方案AmqpTemplateHelper.javaimport com.rabbitmq.client.AMQP;import com.rabbitmq.client.Channel;import org.springframework.amqp.core.AmqpTempla原创 2022-01-22 16:30:22 · 1944 阅读 · 0 评论 -
RabbitMq进阶——延迟队列使用
使用场景1、定时任务,比如订单超过30分钟自动取消2、监听任务,比如每隔10秒,监听多个子任务是否已经完成实现方案本人讲述spring boot框架下的实现方案延迟队列绑定import org.springframework.amqp.core.*; /** * 延时队列设置 * 设置延时队列的过期时间为2秒钟 * 2秒之后,延时队列将消息发送给消费队列 */ @Bean public Queue testDelay原创 2022-01-22 16:10:12 · 2008 阅读 · 0 评论 -
事务下发送MQ问题,改成事务提交后发送MQ
实际项目中,我们会经常用到MQ,比如RabbitMQ。通常会遇到一个问题:当在一个开启事务的方法里面发送MQ,经常会遇到事务还没提交,但是消息却已经消费完了。而如果消费者需要用到提交后的数据,则会报错或出现问题。解决方案事务提交后再发送MQ,代码如下AmqpTemplateHelper.java@Componentpublic class AmqpTemplateHelper { @Autowired private AmqpTemplate amqpTemplat原创 2021-02-09 17:30:03 · 2099 阅读 · 1 评论 -
RabbitMq学习笔记-基础知识点
生产者发送消息的过程(1)生产者连接到RabbitMQ Broker建立一个连接(Connection),开启一个信道(Channel)(2)生产者声明一个交换器,并设置相关属性,比如交换机类型、是否持久化等(3)生产者声明一个队列并设置相关属性,比如是否排他、是否持久化、是否自动删除等(4)生产者通过路由键将交换器和队列绑定起来(5)生产者发送消息至RabbitMQ Brok......原创 2020-03-09 14:23:00 · 538 阅读 · 1 评论 -
RabbitMq学习笔记-实战篇-spring boot整合
1、JSON序列化与反序列化要实现消息跨平台,需要配置消息JSON序列化(配置见代码实现),就可以实现不同语言之间互相发送/接收消息,还可以直接用RabbitMQ控制台发送消息。从RabbitMQ控制台发送消息,指定properties content_type=application/jsonpom.xml<dependency> <groupI......原创 2020-03-09 14:49:28 · 690 阅读 · 0 评论