9 个版本 (破坏性更新)
0.14.1 | 2024年1月24日 |
---|---|
0.13.0 | 2023年11月11日 |
0.12.0 | 2022年11月21日 |
0.10.1 | 2022年1月18日 |
0.7.0 | 2021年12月3日 |
#1351 in 网页编程
用于 4 crates
98KB
2.5K SLoC
Dendrite
A Rust 库,用于连接到 AxonServer.
请参阅 GitHub 项目 rustigaan/archetype-rust-axon,了解如何使用此代码的示例。
核心概念
- 命令/查询责任分离 (CQRS)
- 事件溯源
- 未来和 async/await
- gRPC
更多信息
crate dendrite-macros 提供了宏,使得与 dendrite crate 的交互更加便捷。
该项目是 dendrite2go 和 archetype-go-axon 的兄弟项目,但针对 Rust 编程语言。
状态
该项目现在已达到最小可行交付水平,第一阶段已完成:当前应用程序可以正确地与 AxonServer 通信。与 archetype-go-axon 一样,它可以执行以下操作
- ☑ 与 AxonServer 建立会话
- ☑ 启用 React 应用通过 grpc-web 调用示例-command-api 服务的 RPC 端点
- ☑ 发布命令
- ☑ 注册命令处理器并处理命令
- ☑ 提交事件
- ☑ 将事件流式传输到 UI
- ☑ 检索聚合事件的记录并构建投影
- ☑ 验证命令与投影
- ☑ 注册跟踪事件处理器并处理事件
- ☑ 在查询模型(Elastic Search)中存储记录
- ☑ 在 Elastic Search 中存储跟踪令牌
- ☑ 注册查询处理器并处理查询
- ☑ 在 UI 中显示查询结果
以及
- 内存缓存聚合投影
- 在处理器主体中访问 Axon 命令、事件、QueryRequest 消息。
现在,最好
- 添加对在 AxonServer 中存储聚合投影快照的支持。
- 添加对跟踪事件处理器负载分片的支持。
- 添加对 sagas 的支持。
- ...
依赖关系
~10–20MB
~264K SLoC