- 文集信息
- 目录大纲
- 最新文档
- 知识宇宙
文集详情
文集导读
教程导读
回顾消息中间件走过的这段水路,最初的景象并不体面:服务之间要递话,靠彼此直连、轮番探问,发送方稍微快半拍,接收方就跟不上趟;谁掉线片刻,在途的托付便不知所踪。工程师们被这种脆弱的直连折磨够了,才慢慢琢磨出公共水道的思路——消息不必由发送方亲自押送到门,先存进公共的仓库,再由愿意接货的下游按自己的节奏来取。消息从那一刻起获得了自由:它不再要求生产者与消费者同时在场,而是顺着水道漂流,想漂多久漂多久,想漂多远漂多远。Apache Pulsar 是这条水道上晚近修成、却修得格外讲究的干流:计算与存储分家、租户与命名空间分层、订阅与确认分开治理。本教程用"消息漂流记"的视角带你看懂它——跟随消息主角从诞生到被签收,看它进哪个主题、经谁调度、存进哪层货仓、谁来接货、如何签收、漂丢了怎么办。全册的章法,就是这段旅程的章法。
这本教程解决什么问题
市面上的 Pulsar 资料大体分成两派:一派是官方文档式的功能清单,条目齐全却不告诉你它们为什么长这样;另一派是源码解读,直接把你按进 BookKeeper 的写入路径里,还没学会游泳先呛了水。缺的恰恰是中间那段叙事:一条消息从 Producer 出发,为什么先到 Broker 却不被 Broker 存储?它落进 Ledger 时的条带化是怎么回事?下游的三种消费者为什么能用不同模式接住同股水流?确认丢了会发生什么?这些问题只有顺着漂流的方向走,才能答得自然。
本教程把 Pulsar 的知识重新组织成航程:第 1 章出发之前,先认户籍(租户、命名空间、主题)与航道规则(和 Kafka、RabbitMQ 比有什么不同);第 2 章看河道本身——客户端、Broker、BookKeeper、ZooKeeper 四层如何分工;第 3 章让消息正式下水,讲主题分区、生命周期、订阅模式与确认语义;第 4 章潜入货仓,拆存算分离、写入路径、Quorum 与分层存储;第 5 章你亲自掌舵,用 Java 与 Python 写出生产者、消费者、Reader 与 Schema;第 6 章是航行保障——部署、监控、安全多租户,以及 Functions、事务这些越来越远的水域。
适合谁读
- 有 Java 或 Python 基础、需要为业务选型或接入消息队列的后端工程师;
- 用过 Kafka 或 RabbitMQ,想搞清楚 Pulsar 的存算分离与订阅模型到底差在哪的人;
- 负责中间件运维,要为团队搭建、监控、排错 Pulsar 集群的平台同学;
- 准备面试或做技术调研,需要一套成体系而非碎片化的 Pulsar 知识地图的读者。
不要求你此前接触过 Pulsar;消息队列的通识(生产、消费、堆积、重试)会在用到时就地补齐。
全册漂流航线(知识地图)
下面的航线图是全册的知识地图:方框是六段航程,箭头是学习依赖——先认规则,再看河道,然后让消息下水;货仓的内部构造放在消息能漂起来之后讲,因为你得先见过漂流,才会在意它存哪里。客户端实战放在存储之后,因为写代码时你需要知道自己的消息正漂过哪层。最后的航行保障,收拢运维、安全与生态。
图 0-1 全册漂流航线图

怎么用这本教程
按航线顺序读最省力,但两处可以跳:急着写代码的读者,看完第 3 章订阅模式后可直接跳到第 5 章,回头再补第 4 章存储内幕;做选型调研的读者,第 1 章的对比与场景边界就是为你写的,读它便够形成初步结论。每章支柱页交代本章主线与站点,每节开头说明它在航线上的位置,读完一节你应当能说出它承接哪站、通往哪站。
动手环境建议:本机解压一份 Pulsar 发行包即可跑通全册示例,单机模式包含 Broker、BookKeeper 与元数据存储的全部角色;第 5 章的 Java 示例用 Maven 引客户端依赖,Python 示例 pip 装客户端即可。每个示例都给出预期输出或命令行会话,跑不通时先对照第 6 章的排错清单查日志。全书代码围绕同一业务隐喻展开:电商的订单事件流。订单创建、支付回调、库存扣减这些事件,就是我们要反复放逐、追踪、签收的漂流者。
金句收束:消息队列的全部复杂性,本质上只有一组问题——消息放哪、谁来送、存多久、谁接走、丢了怎么办。Pulsar 把这组问题拆到了四个组件、五种订阅与多层存储里,本教程把它们再装回同一段漂流旅程。
目录大纲
最新文档
知识宇宙
正在加载知识图谱...