SuperAPI AI 工具集

infrastructure-design

编程与开发

查看项目

更新于 10-19 16:15

技能介绍

Infrastructure Design 提供面向分层架构(六边形架构/DDD)应用的实用基础设施模式。该技能的核心分工是:领域层定义业务一致性需求,应用层定义工作单元边界和能力端口,基础设施层实现事务与投递机制。

用途与工作流

该技能用于在实现事件总线或 broker 中继、应用 Outbox/Inbox 等模式时提供基础设施模式指导。其工作流为:识别关注点是事件投递、数据一致性、读性能还是查询简化;从 references/ 加载相关文件选择正确参考;在正确层应用(领域拥有业务含义,应用拥有编排契约,基础设施提供技术适配器);验证权衡(每项基础设施决策都会在复杂度、一致性、延迟等方面有所取舍),并使权衡显式化。

主要能力与决策映射

技能提供快速决策地图,将关注点映射到模式和参考文件:可靠发布领域事件且不丢失对应 DB 支撑的 Event Bus/Outbox(references/event-bus.md);确保多次写入一起成功或失败对应用例中的事务(references/transactions.md);可接受陈旧度的重复测量读取对应最窄可复用层的 Cache-Aside(references/cache.md);代码库中重复的复杂 JOIN 查询对应数据库视图/物化视图(references/database-views.md);读模型需要预计算聚合对应物化视图、触发器或事件驱动投影(references/database-views.md);事件必须经受应用崩溃对应 Outbox 模式(references/event-bus.md);消费者必须容忍重复投递对应幂等处理器/Inbox(references/event-bus.md);遗留写入器无法发出消息对应变更数据捕获转换器(references/event-bus.md);陈旧聚合写入不得覆盖较新决策对应乐观版本检查(references/transactions.md)。

核心原则

核心契约先行:在领域或应用核心定义所需端口,在基础设施实现适配器;DDD 拥有 Repository 语义,基础设施拥有映射、事务、锁定、缓存和 Outbox 机制。事务包裹工作单元:应用代码或类型化装饰器拥有业务边界,Repository 加入作用域事务,不独立提交。缓存是派生副本:仅为已测量的问题添加,并明确新鲜度、失效、隐私、失败和移除策略。视图抽象查询而非业务逻辑:视图是保存的 SELECT,不能替代领域模型。持久性需要设计而非隐含:异步投递只有在持久交接、幂等消费者、重试、死信处理和可观测性齐备时才可靠。

适用场景与限制

适用于采用六边形/DDD 分层架构、需要处理事件投递、数据一致性、读性能或查询简化的应用开发场景。资料列出了相关技能(如 ddd-best-practices、design-patterns-best-practices、oop-best-practices、tdd-best-practices、refactoring-best-practices、data-migration-best-practices)及参考文件覆盖范围(event-bus.md、transactions.md、cache.md、database-views.md)。关于具体安装命令、收费、价格、平台、效果等事实暂未提供。