图解PD分离分布式架构及端口配置解析

1. 顶层:外部访问与路由层

  • 入口:最上方的"访问"是外部请求(如用户/客户端的HTTP/gRPC请求)。

  • 路由(router) :请求首先到达 port: 8090的路由服务。它负责负载均衡 ,将请求分发到下游的 PrefillDecode服务(图中显示 Prefill 0/1Decode 0/1两个实例组)。

2. 中间层:业务逻辑服务(Prefill / Decode)

Prefill 和 Decode 是两类核心业务服务(可能是"预填充"和"解码"类的计算任务),各有 2个实例(0、1) ,体现水平扩展设计。

(1)router → Prefill/Decode 的通信端口
  • Prefill 0/1对外(router访问)的端口:30003(两个实例共享同一端口,说明是"端口复用",通过实例ID区分)。

  • Decode 0/1对外(router访问)的端口:30002(同理,端口复用,实例0/1)。

(2)Prefill ↔ Decode 的内部通信端口
  • disaggregation_bootstrap_port(图中标注为 PREFILL_PORT):

    • Prefill 实例之间、Prefill → Decode 实例的通信端口:8999(双向箭头表示互相通信,比如Prefill计算后把中间结果发给Decode)。
  • dist_init_addr(图中标注为 DIST_PORT):

    • Prefill 内部(0↔1)、Decode 内部(0↔1)的通信端口:6000(Prefill实例间)、6001(Decode实例间)(双向箭头表示实例间同步/协作)。
(3)实例区分:RANK
  • RANK字段:Prefill 0/1Decode 0/1RANK分别为 01,用于服务内部区分实例(类似"节点ID",在多实例环境下标识自身身份,比如选举、分片归属)。

3. 底层:元数据与消息中间件

这两个是系统的"基础设施",为业务服务提供状态管理异步通信能力:

  • etcd(存储)

    • 端口:2379(etcd默认客户端端口,用于存储全局元数据,如服务注册、配置、分布式锁、数据分片位置等)。

    • 作用:保证多实例/多服务的状态一致性(基于Raft协议),是"分布式系统的脑"。

  • NATS(消息)

    • 端口:4222(客户端连接端口)、8222(监控/管理端口)。

    • 作用:作为消息总线 ,实现服务间的异步通信(如Prefill处理完任务后,通过NATS发消息通知Decode;或事件驱动的流程触发)。

4. 特殊配置:1PID 不需要的两项

图右侧注释"1PID 不需要这两项",指的是 dist_init_addrDIST_PORT)和 RANK

  • "1PID"可能是指单进程/单实例部署模式(或特定的简化部署场景)。此时不需要"实例间通信端口(DIST_PORT)"和"实例区分(RANK)",因为只有一个实例,无需多实例协作或身份标识。

整体流程总结

  1. 外部请求 → 路由(8090)→ 负载均衡到 Prefill/Decode(30003/30002)。

  2. Prefill/Decode 实例间通过 8999(跨服务)、6000/6001(同服务内)通信,完成业务逻辑。

  3. 系统依赖 etcd(2379)存储全局状态(如服务注册、分片信息),依赖 NATS(4222/8222)做异步消息传递。

  4. 若为"1PID"单实例场景,可省略 DIST_PORTRANK配置。

相关推荐
fīɡЙtīиɡ ℡1 小时前
AI 应用系统设计
java·开发语言·人工智能
小淮AI2 小时前
国际教育课程的本土化探索:以枫叶教育三十年为观察样本
大数据·人工智能
又折桃枝换酒钱2 小时前
VisCoder2:构建多语言可视化编码智能体(翻译与解读)
人工智能·信息可视化
AI绘画哇哒哒2 小时前
【建议收藏!】35岁后端血泪忠告,这3类人别硬转Agent(过来人亲述)
java·人工智能·后端·ai·程序员·大模型·agent
Chengbei112 小时前
DSH渗透测试插件dsh-pentest全新升级!适配DeepSeek Harness,可视化探索链路,一键搭建轻量化AI渗透测试环境。
人工智能·web安全·网络安全·微信·小程序·系统安全·安全架构
QN1幻化引擎2 小时前
DalinX Phi 性能突破:跨层秩保持对齐与意识涌现度量的实证研究
人工智能·ai·架构·agi·asi
NeilCarmack2 小时前
Deepseek-harness增加桌面版端序列:第 1 讲 · 命令解析:`pnpm dsh desktop` 的第一步
人工智能·agent·ai agent
龙兵AI增长破局圈.赵老师讲成交2 小时前
只有把过程管好,结果才会出来。
大数据·人工智能·ai·创业创新
最强小杰2 小时前
gpt-5.6-sol 频繁报 503 怎么办?区分容量熔断和限速 429 的排查方法 + 可复用 retry wrapper
java·人工智能·gpt·ai
天天代码码天天3 小时前
我做了一个只有一个 EXE 的本地 Markdown 编辑器:lw.MD(简墨)
人工智能