钩子的注册: DefaultMQProducerImpl#registerSendMessageHook注册钩子处理类,可注册多个。 public SendResult sendMessage( final String addr, final String brokerName, final Me ...
分类:
其他好文 时间:
2020-01-16 00:50:30
阅读次数:
93
packagecom.adtec.mq;importjava.security.MessageDigest;publicclassmd5Utils{privateString[]hexDigits={"0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F"};publicStringmd5Digest(Stringsrc){tr
分类:
其他好文 时间:
2020-01-15 19:18:42
阅读次数:
71
文章目录 一、 Producer端重试 二、 Consumer端重试 1. Exception 2. Timeout总结 对于MQ,可能存在各种异常情况,导致消息无法最终被Consumer消费掉,因此就有了消息失败重试机制。很显示,消息重试分为2种:Producer端重试和Consumer端重试。 ...
分类:
其他好文 时间:
2020-01-15 19:11:14
阅读次数:
95
消息队列核心使用场景:削峰,解耦,异步 MQ的好处 削峰: 比如抢购秒杀,不在这个点上的时候,可能每秒只有50次请求,但是开始秒杀的时候每秒的请求数可能可以达到上万次,如果这些操作直接落点在数据库上, 拿MYSQL来说,一般MYSQL一秒最多可以处理2000条请求,一秒上万的请求基本直接就把服务器给 ...
分类:
其他好文 时间:
2020-01-14 16:30:44
阅读次数:
93
FAQ Q: 如何确保消息不丢失? Q: mq 的缺点 Q: 如何避免消息重复投递或重复消费? 在消息 时,MQ 内部针对每条生产者发送的消息生成一个 inner msg id,作为去重的依据(消息投递失败并重传),避免重复的消息进入队列; 在消息 时,要求消息体中必须要有一个 bizId(对于同一 ...
分类:
其他好文 时间:
2020-01-13 19:40:08
阅读次数:
63
SpringBoot整合RabbitMQ 入门2020-01-12 创建生产者类,并且在yml配置文件中配置5要素连接MQ yml配置文件 spring: rabbitmq: host: xx.xx.xx.xx port: 5672 virtual-host: / username: 默认guest ...
分类:
编程语言 时间:
2020-01-12 09:28:07
阅读次数:
85
同一个topic下 不同channel分多个项目的时候,如果一个项目引用了别的项目包(这两个项目连的是同一个topic),那么被引用的项目就需要手动初始化mq,不能使用Init,因为会导致mq初始化两次,在一个channel下链接了两个消费者导致mq进行了负载均衡. ...
分类:
其他好文 时间:
2020-01-11 11:39:39
阅读次数:
167
一、概念 相当于一个ActiveMQ服务实例 Broker其实就是实现了用代码的形式启动了ActiveMQ将MQ嵌入到java代码中,以便随时用随时启动,在用的时候再去启动这样能节约资源,也保证了可靠性。 二、按照不同配置文件启动ActiveMQ 1、 先将ActiveMQ根目录下conf文件夹中的 ...
分类:
其他好文 时间:
2020-01-10 22:19:39
阅读次数:
123
RabbitMQ是一个在AMQP协议标准基础上完整的,可复用的企业消息系统。它遵循Mozilla Public License开源协议,采用 Erlang 实现的工业级的消息队列(MQ)服务器,Rabbit MQ 是建立在Erlang OTP平台上。 装RabbitMQ服务器必须首先安装 Erlan ...
来自森大科技官方博客http://www.cnsendblog.com/index.php/?p=263GPS平台、网站建设、软件开发、系统运维,找森大网络科技!http://cnsendnet.taobao.com 介绍: 它提供了强大、 安全、 稳定的消息传递主干, 在世界屡获殊荣。 它帮您搭建 ...
分类:
其他好文 时间:
2020-01-07 17:50:35
阅读次数:
109