
MQ
老周聊架构
微信公众号:老周聊架构
展开
-
消息队列的五个使用场景
一、简介消息队列中间件是分布式系统中重要的组件,主要解决应用耦合,异步消息,流量削锋等问题;实现高性能,高可用,可伸缩和最终一致性架构;使用较多的消息队列有ActiveMQ,RabbitMQ,RocketMQ,Kafka。二、消息队列使用场景以下介绍消息队列在实际应用中常用的使用场景。应用解耦,异步处理,流量削锋、日志处理和消息通讯五个场景。1、应用解耦场景说明:像我们公司的统一的管...原创 2019-09-02 00:16:25 · 1063 阅读 · 0 评论 -
消息的重发以及补充策略
一、MQ消息发送1、发送端MQ-client(消息生产者:Producer)将消息发送给MQ-server;2、MQ-server将消息落地;3、MQ-server回ACK给MQ-client(Producer);4、MQ-server将消息发送给消息接受端MQ-client(消息消费者:Customer);5、MQ-client(Customer)消费接受到消息后发送ACK给MQ-s...原创 2019-09-18 23:05:09 · 3186 阅读 · 0 评论 -
如何保证消息的有序性
一、RabbitMQ架构RabbitMQ消息顺序错乱的场景:一个 queue,多个 consumer。比如,生产者向 RabbitMQ 里发送了三条数据,顺序依次是 data1/data2/data3,压入的是 RabbitMQ 的一个内存队列。有三个消费者分别从 MQ 中消费这三条数据中的一条,结果消费者2先执行完操作,把 data2 存入数据库,然后是 data1/data3。这不明显乱了...原创 2019-09-20 00:04:40 · 3021 阅读 · 0 评论 -
用过哪些MQ,和其他mq比较有什么优缺点
一、常见消息中间件MQ介绍1、RocketMQ阿里系下开源的一款分布式、队列模型的消息中间件,原名Metaq,3.0版本名称改为RocketMQ,是阿里参照kafka设计思想使用java实现的一套mq。同时将阿里系内部多款mq产品(Notify、metaq)进行整合,只维护核心功能,去除了所有其他运行时依赖,保证核心功能最简化,在此基础上配合阿里上述其他开源产品实现不同场景下mq的架构,目前主...原创 2019-09-20 23:37:10 · 5373 阅读 · 0 评论