
rocketMq
文章平均质量分 85
rocketMq
Shenkh的Java壁橱
len 一定要有梦想
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
RocketMq源码分析(七)--消息发送流程
消息发送根据消息通信模式(同步、异步、单向)决定消息发送次数。在重试发送时,记录上一次发送失败的broker(lastBrokerName),这样在下一次重试时能避免再次往失败的broker发送。执行消息发送时,选择所发送消息topic的一个队列,这个队列不能是上一次重试时使用的队列(lastBrokerName)当向消息:producer向broker发送消息,执行发送后立即返回,也不等待broker结果。如果消息是事务消息,添加事务标记。消息发送请求对象,包含发送消息必要的信息(topic、队列等)原创 2023-05-21 15:46:34 · 1247 阅读 · 0 评论 -
RocketMq源码分析(六)--消息消费者启动流程
如果是刚创建实例时(CREATE_JUST状态),则先将附实例状态更改为START_FAILED,然后进行一些列初始化并启动操作(检查配置、复制订阅信息、设置负载均衡实现、创建并加载消息进度offsetStore、创建并启动消息消费consumeMessageService服务、向消费者工厂注册自己),最后变更为RUNNING状态。//服务实例状态,有:CREATE_JUST、RUNNING、SHUTDOWN_ALREADY、START_FAILED,默认CREATE_JUST。接口定义,默认实现类为。原创 2023-05-02 17:28:00 · 1058 阅读 · 0 评论 -
RocketMq源码分析(五)--消息生产者启动流程
消息生产者方法由接口MQProducer定义,默认消息生产者实现类为DefaultMQProducer原创 2022-10-22 17:41:05 · 802 阅读 · 0 评论 -
RocketMq源码分析(四)--消息存储服务MessageStore
所以在保存消息的最后,需要提交一次刷盘,然后根据消息的持久化策略,选择进行同步刷盘还是异步刷盘,将内存中的消息数据持久化到磁盘文件中。如果当前mappedFile剩余可添加消息空间大小不足以添加当前消息,这个时候会返回。对于延时消息,把消息原始topic及queueId存入到消息的属性中,然后将当前topic、queueId替换为。方法保存消息之后,消息此时还只是保存在内存中,并未真正保存到commitLog文件中。在保存消息内容之前,先将消息内容计算出一个CRC校验码,用于后续消息内容校验。原创 2022-10-05 23:28:42 · 754 阅读 · 0 评论 -
RocketMq源码分析(三)--Broker启动流程
Broker启动流程原创 2022-09-25 16:34:27 · 737 阅读 · 0 评论 -
RocketMq源码分析(二)--nameServer启动流程
NameServer启动流程,源码解析原创 2022-09-04 10:32:42 · 408 阅读 · 0 评论 -
RocketMq源码分析(一)--基本知识
RocketMq技术架构上主要分为4个部分:NameServer,Producer,Consumer,BrokerServer。 Topic、Tag、Queue是Broker中重要的概念,在Broker消息过滤、查询中起到重要的作用。 消息存储主要由CommitLog、ConsumeQueue、IndexFile三个部分文件构成 (1) 同步刷盘:消息真正持久化至磁盘后,broker才会给producer返回ACK响应 (2)异步刷盘:利用PageCache,只要消息写入PageCache即可原创 2022-08-14 16:30:58 · 730 阅读 · 0 评论 -
MQ的高可用
前言 如果有人问到你 MQ 的知识,高可用是必问的。MQ 会导致系统可用性降低。所以只要你用了 MQ,接下来问的一些要点肯定就是围绕着 MQ 的那些缺点怎么来解决了。RabbitMQ 的高可用性 RabbitMQ 是比较有代表性的,因为是基于主从(非分布式)做高可用性的,我们就以 RabbitMQ 为例子讲解第一种 MQ 的高可用性怎么实现。 RabbitMQ 有三种模式:单机模式、...转载 2019-04-26 00:23:16 · 436 阅读 · 0 评论 -
RocketMQ、Kafka、RabbitMQ对比
一、优缺点1、RabbitMQ RabbitMQ 2007年发布,是一个在AMQP(高级消息队列协议)基础上完成的,可复用的企业消息系统,是当前最主流的消息中间件之一。 RabbitMQ优点:由于erlang语言的特性,mq 性能较好,高并发;吞吐量到万级,MQ功能比较完备健壮、稳定、易用、跨平台、支持多种语言、文档齐全;开源提供的管理界面非常棒,用起来很好用社区活跃度高;...原创 2019-09-15 18:20:08 · 313 阅读 · 0 评论