摘要:
Maven 命令的核心格式是:mvn [options] [<goal(s)>] [<phase(s)>]。理解生命周期 (Lifecycle) 和阶段 (Phase) 是掌握 Maven 命令的关键。 一、Maven 核心概念:生命周期和阶段 Maven 的生命周期由一系列阶段组成,执行某个阶段会 阅读全文
posted @ 2025-09-18 17:58
NeoLshu
阅读(8)
评论(0)
推荐(0)
摘要:
八、高阶与最佳实践 1. 与 Spring Cloud Stream、Dubbo、Seata 的整合 Spring Cloud Stream 依赖配置 (pom.xml) <dependency> <groupId>org.springframework.cloud</groupId> <artif 阅读全文
posted @ 2025-09-18 16:25
NeoLshu
阅读(4)
评论(0)
推荐(0)
摘要:
第七章 · 实战与运维篇 7.1 RocketMQ 部署与环境搭建 7.1.1 单机部署 适用于学习和小规模测试环境。 配置步骤: 下载 RocketMQ 二进制包。 启动 NameServer: nohup sh bin/mqnamesrv & 启动 Broker: nohup sh bin/mq 阅读全文
posted @ 2025-09-18 16:13
NeoLshu
阅读(4)
评论(0)
推荐(0)
摘要:
第六章 · RocketMQ 全模块源码与线程机制终极全景 6.1 全景图概览 6.2 机制解析 6.2.1 Producer 端机制 普通消息: 负载均衡选择 Broker 和队列。同步 / 异步 / 单向发送模式。 事务消息: HALF 消息发送到 Broker。本地事务执行。回查线程池确认提交 阅读全文
posted @ 2025-09-18 16:11
NeoLshu
阅读(6)
评论(0)
推荐(0)
摘要:
第五章 · 事务与顺序消息线程机制 5.1 事务消息线程机制 RocketMQ 事务消息机制核心是 半消息(Half Message) + 本地事务 + 回查(Check)线程。 5.1.1 半消息发送 Producer 调用 sendMessageInTransaction()。消息写入 Comm 阅读全文
posted @ 2025-09-18 16:09
NeoLshu
阅读(4)
评论(0)
推荐(0)
摘要:
第四章 · 多线程与刷盘机制 4.1 CommitLog 刷盘线程机制 RocketMQ 为保障高吞吐和可靠性,提供多种刷盘策略: 异步刷盘 (FlushRealTimeService): 独立线程周期性将内存写入磁盘。Producer 不阻塞等待 ACK,提高吞吐。 同步刷盘 (GroupComm 阅读全文
posted @ 2025-09-18 16:07
NeoLshu
阅读(4)
评论(0)
推荐(0)
摘要:
第三章 · 源码篇(深度剖析与实现细节 · 机制扩展版) 3.1 Broker 内部机制 3.1.1 启动与注册机制 Broker 启动时,首先加载配置文件,包括 Broker 名称、角色(Master / Slave)、存储路径、监听端口等,然后进行 NameServer 注册,以便 Produc 阅读全文
posted @ 2025-09-18 16:06
NeoLshu
阅读(4)
评论(0)
推荐(0)
摘要:
RocketMQ 源码级解读图谱 本文旨在展示 RocketMQ 核心模块的 关键方法调用顺序 + 内存布局 + 多线程刷盘线程 1. CommitLog 内部方法调用链 + 内存布局 1.1 内存布局与文件结构 顺序写消息序列化CommitLog+MappedFileList mappedFile 阅读全文
posted @ 2025-09-18 15:57
NeoLshu
阅读(4)
评论(0)
推荐(0)
摘要:
第二章 · RocketMQ 机制篇(核心特性与原理) 2.1 消息存储机制 2.1.1 存储架构概览 RocketMQ 的消息存储是统高吞吐和可靠性的核心。存储架构主要由三部分组成:CommitLog、ConsumeQueue 和 IndexFile。 模块功能CommitLog消息的物理存储,顺 阅读全文
posted @ 2025-09-18 15:55
NeoLshu
阅读(5)
评论(0)
推荐(0)
摘要:
1.1 RocketMQ 简介与发展历史 1.1.1 为什么需要消息队列 在分布式系统架构中,服务之间通常面临以下挑战: 系统耦合度高 如果服务 A 调用服务 B 时是同步依赖,那么 B 服务压力过大可能导致整个系统链路阻塞。 流量削峰填谷 高并发场景下(如电商秒杀),直接将请求打到数据库或下游服务 阅读全文
posted @ 2025-09-18 15:38
NeoLshu
阅读(4)
评论(0)
推荐(0)
摘要:
一、什么是死信队列(DLQ)?为什么需要它? 定义(简短):死信队列(Dead Letter Queue,DLQ)是用来保存无法被正常消费或处理的消息的特殊队列/主题。它让系统不会因为个别“坏消息”阻塞主消费流,而是把这些问题消息隔离出来,供人工或自动化流程后续排查、修复或重试。 (企业/云厂商对D 阅读全文
posted @ 2025-09-18 15:13
NeoLshu
阅读(4)
评论(0)
推荐(0)
摘要:
概览 — 三个角色一目了然 Producer(生产者):消息的创建者与发送者。负责消息的序列化、路由决策、重试、批量、压缩与发送可靠性(ACK策略、事务等)。Broker(中间件/服务端):消息的接收、存储、路由和分发器。负责持久化、索引、副本同步、高可用、流控与监控。Consumer(消费者):消 阅读全文
posted @ 2025-09-18 15:00
NeoLshu
阅读(3)
评论(0)
推荐(0)
摘要:
一、基础概念 延迟消息(Delayed Message) 消息被发送后,并不会立刻投递给消费者,而是等待一段时间(Delay Time)后再投递。典型应用:订单未支付 30 分钟自动取消、延迟重试任务、缓存预热。 定时消息(Scheduled Message) 消息在一个 指定的时间点 才会投递给消 阅读全文
posted @ 2025-09-18 14:55
NeoLshu
阅读(6)
评论(0)
推荐(0)
摘要:
一、为什么要保证消息顺序? 在很多业务场景中,消息的先后顺序至关重要,比如: 电商订单:先创建订单 → 再支付 → 再发货,顺序必须正确。金融交易:转账操作必须严格按照请求的时间顺序处理。日志处理:日志消息必须按产生顺序写入。 如果顺序错乱,可能造成严重的数据不一致问题。 二、消息顺序分类 全局顺序 阅读全文
posted @ 2025-09-18 14:53
NeoLshu
阅读(2)
评论(0)
推荐(0)
摘要:
一、为什么需要消息持久化? 保证消息不丢失:在 Broker 宕机、网络异常、消费者离线的情况下,仍能恢复消息。满足高可靠业务需求:电商订单、金融支付、物流跟踪等核心链路。应对消息堆积:持久化存储可避免内存耗尽,支持长时间积压与延迟消费。 持久化的本质:将消息从内存转存到磁盘(或分布式存储),结合确 阅读全文
posted @ 2025-09-18 14:51
NeoLshu
阅读(5)
评论(0)
推荐(0)

浙公网安备 33010602011771号