
MQ
牛八里昂
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
rocketmq架构简述
1、nameServer类似kafka中的zk。zk有主从,同步数据。nameserver主要维护路由信息,相互之间不通信,性能提高很多;意味着NameServer中任意的节点挂了,只要有一台服务节点正常,整个路由服务就不会有影响 2、存储 所有的消息是存储在CommitLog文件中,不区分topic; consumerQueue 记录的是基于topic的消息索引文件,是有序的。 indexFile记录的是基于key或时间区间的消息的映射文件,也是有序的。 3、broker 与kafka..原创 2021-12-30 23:22:56 · 1156 阅读 · 0 评论 -
kafka、rabbitmq、rocketmq 浅谈
关注知识面 1、rabbitmq erlang语言开发,吞吐量低(单机在万级别)、消息积累影响性能、社区活跃,不利于java二次开发,需学习AMQB协议。 优势:社区活跃。 劣势:吞吐量低,消息积累影响性能,学习成本高。 学习什么是AMQB协议 2、rocketmq 吞吐量高(单机十万级)、 java实现方便二次开发,参考kafka架构,高可靠(消息0丢失)。 优势:方便java二次开发、高可靠(适用于互联网、金融) 劣势:社区活跃度不高 为什么可以做到消息0丢失 3、kafk原创 2021-12-30 22:58:46 · 1306 阅读 · 0 评论 -
RocketMQ 核心源码
RocketMQ 由NameServer 集群、Producer 集群、consumer 集群、broker 集群组成。 一、消费生产大致原理 1. Broker 在启动的时候向所有NameServer 注册,并保持长连接,每30s 发送一次心跳。 2. Producer 在发送消息的时候从NameServer 获取Broker 服务器地址,根据负载均衡选择一个服务器来发送消息 3. Consumer 消费消息同样是从NamerServer 获取Broker 地址,然后主动拉取消息。 Topic...原创 2021-12-29 22:18:34 · 848 阅读 · 0 评论 -
rabbitMQ死信
死信流程图 死信信息处理步骤 一、声明死信交换器。 二、声明普通队列中消费失败的信息入死信交换器。 (目的:消费者消费失败的消息不重入队列,交给死信交换器) 此处需要设置两个点:1、消费者消费消息失败,设置不重入队列。 2、设置普通队列的属性,将消费失败不重入队列的消息,交由死信交换器处理。 三、声明专门存放死信消息的队列。 四、死信交换器和死信消息存储队列绑定。 只有绑定后,其他队列中那些失败的没有重入队列的消息,才会经死信交换器放入死信存储队列中 五、配.原创 2020-06-25 22:37:41 · 292 阅读 · 0 评论 -
RabbitMQ学习
rabbitmq是MQ中的一种,比较适用于一般的中小型公司。并发量可以达到1.2w+。 基础知识: RabbitMQ的发送、接收端口一般为5672,管理接口15672。 RabbitMQ用TCP建立通信,但是TCP连接是十分消耗资源的,所以RabbitMQ引入了信道Channel的概念。信道Channel其实是TCP的虚连接,建在TCP之上,相对TCP来讲效率很高,用到了多路复用技术。 另外还引入了交换机,可以根据特定的场景选择特定的策略方式,主要由 Direct exchange:直连.原创 2020-06-20 23:32:53 · 3315 阅读 · 0 评论