Aster文档
搜索 Aster 文档
ESC
产品
版本

输入关键词开始搜索。

    文档目录

    ASTER EVENT / 01

    Aster Event 产品概览

    aster-event 的 Provider、发布订阅、持久化、路由和交付边界。

    aster-event 是 Provider 中立的发布、订阅和持久化库。当前版本为 0.4.0。应用通过 EventBus 和 EventProvider 使用统一接口。

    Memory、NATS JetStream 和 Apache Iggy 后端共享事件 Envelope 与订阅合同,但不共享全部投递控制或历史顺序。

    架构图Event 的 Provider 中立发布订阅边界EventBus 统一事件、订阅、历史和管理接口。Memory、NATS、Iggy 或自定义 Provider 负责实际传输与持久化。
    Event 的 Provider 中立发布订阅边界应用通过 EventBus 发布和订阅统一事件。EventProvider 连接 Memory、NATS、Iggy 或自定义后端。Schema、DLQ 和指标在 Event 层,重试和分区由 Provider 负责。应用事件EventBus发布 / 订阅 / 历史 / 管理EventProviderMemory进程内 BroadcastNATS JetStreamApache Iggy自定义后端Schema / DLQ / StateStore /Metrics

    Provider 与运行范围

    Event Provider 的适用范围
    Provider适用场景持久化与分发
    MemoryProvider测试、开发和单进程进程内 Broadcast,不提供跨进程持久化
    NatsProvider显式启用的多服务部署JetStream、Durable Consumer 和 at-least-once
    IggyProvider默认 feature 包含的 Rust Broker 路径Topic Log、Consumer Group 和显式 Offset

    默认 feature 是 iggy、encryption、cloudevents 和 routing。最小核心关闭默认 feature 后,只保留类型、MemoryProvider、EventBus、Schema、DLQ 和 Metrics。

    统一事件模型

    Event Envelope 包含 ID、Subject、Category、Event Type、Version 和 Payload。投递上下文包含 Sequence、Num Delivered 和 Stream。

    Subject 使用点分层次:

    events.<category>.<topic>[.<subtopic>...]
    

    通配符 events.market.> 匹配任意深度的 Market 事件,events.*.forex 匹配任意 Category 下的 Forex 主题。

    Schema Registry、DLQ、StateStore 和 Metrics 属于 Event。重试、Backpressure、连接恢复和分区仍由 Provider 或宿主负责。

    当前限制

    Iggy 目前拒绝 expected_sequence 和 DeliverPolicy::LastPerSubject。部分重投递参数会被接受但忽略,Topic 也只有单分区。

    Iggy Server 的上游重启缺陷仍可能阻止相同数据目录再次启动。当前 iggy feature 不能标记为 GA-hardened,生产采用前必须核对上游修复。

    不同 Provider 的历史顺序不属于统一合同。Memory 为 newest-first,Broker 通常为 oldest-first。

    文档入口

    实现依据