SuperAPI AI 工具集

cqrs

通用与其它

查看项目

更新于 10-15 21:40

技能介绍

用途:在实现 CQRS 模式、分离读写模型、优化查询性能时使用,核心是把命令(写)与查询(读)拆分为独立模型与 API,各自按需优化与扩展。

主要能力:命令侧提供 Command 基类、CommandHandler 抽象与 CommandBus 注册/分发;查询侧提供 Query 基类、QueryHandler 与 OrderView 读模型;读模型同步通过 ReadModelSynchronizer 读取事件存储、应用投影并保存检查点,支持 rebuild_projection 重建;最终一致性提供 query_after_command 的 read-your-writes 等待逻辑,超时返回可能过期的数据并带 _warning。

使用方式:定义具体命令(如 CreateOrder)与查询(如 GetOrderById),实现对应 handler,向总线注册后用 dispatch 调用;在 FastAPI 中命令端点用 POST/PUT/DELETE,查询端点用 GET,通过 Depends 注入总线。

适用与限制:适合读写扩展需求不同、查询复杂、事件溯源、高性能报表的系统;不适合简单 CRUD、无扩展需求或小数据集。需接受最终一致性并定义可接受的延迟,在命令处理器中做校验,读模型做反规范化,事件需版本化。

资料未提供安装命令、依赖版本、价格或平台信息。