Documentation
¶
Overview ¶
Package messaging 提供消息投递与事件分发的抽象,解决"把消息从 A 送到 B"的问题。
选包标准:
- 核心语义是发布/订阅、扇出、事件通知
- 传输无关——具体 broker(Kafka/NATS/RabbitMQ/Redis Streams)在 contrib/ 实现
- 可依赖 foundation/,不可依赖 transport/api/ 等上层
已有子包:
mq — 传输无关的 Publisher/Subscriber 接口(contrib/ 实现具体 broker) eventbus — 进程内事件总线(同步/异步) stream — 扇出流原语(被 gameloop、ws、sse、versus 等广泛使用) webhook — 出站 Webhook 投递
Directories
¶
| Path | Synopsis |
|---|---|
|
Package eventbus 提供进程内、按主题(topic)分发的泛型事件总线:发布者按 topic 发事件,订阅者按 topic 注册回调处理函数,解耦"谁发"与"谁收"。
|
Package eventbus 提供进程内、按主题(topic)分发的泛型事件总线:发布者按 topic 发事件,订阅者按 topic 注册回调处理函数,解耦"谁发"与"谁收"。 |
|
Package mq 提供传输无关的消息队列抽象:发布/订阅接口 + 一个「消费者即 beauty.Service」 的运行原语 + 处理中间件。
|
Package mq 提供传输无关的消息队列抽象:发布/订阅接口 + 一个「消费者即 beauty.Service」 的运行原语 + 处理中间件。 |
|
otelmq
Package otelmq 为 pkg/mq 提供 OpenTelemetry trace 透传(opt-in)。
|
Package otelmq 为 pkg/mq 提供 OpenTelemetry trace 透传(opt-in)。 |
|
Package stream 提供流式扇出(广播)原语:把一个事件源 fan-out 给多个订阅者, 适合 SSE / WebSocket 等"一份数据推给 N 个连接"的场景。
|
Package stream 提供流式扇出(广播)原语:把一个事件源 fan-out 给多个订阅者, 适合 SSE / WebSocket 等"一份数据推给 N 个连接"的场景。 |
|
Package webhook 提供事件驱动的 Webhook 通知:按事件类型过滤、自定义 header、 可选 body 模板、可选 HMAC 签名,异步触发并带指数退避重试。
|
Package webhook 提供事件驱动的 Webhook 通知:按事件类型过滤、自定义 header、 可选 body 模板、可选 HMAC 签名,异步触发并带指数退避重试。 |
Click to show internal directories.
Click to hide internal directories.