SuperAPI AI 工具集

microservices-patterns

设计与创作

查看项目

更新于 10-16 00:30

技能介绍

用途:为分布式系统设计微服务架构,覆盖服务边界划分、服务间通信、分布式数据管理与弹性设计,适合单体拆分、服务契约设计、事件驱动架构与容错改造等场景。

主要能力:

  1. 服务拆分策略:按业务能力、按 DDD 子域与限界上下文划分,以及 Strangler Fig 逐步从单体抽取服务,示例包含 OrderService、PaymentService、InventoryService。
  2. 通信模式:同步(REST、gRPC、GraphQL)与异步(Kafka 事件流、RabbitMQ/SQS 消息队列、Pub/Sub),并给出带重试与超时的 HTTP 客户端、API Gateway 聚合调用示例。
  3. 数据管理:Database Per Service(每服务独享数据、禁止共享库)与 Saga 分布式事务(编排式步骤、补偿动作、最终一致性)。
  4. 弹性模式:熔断(失败阈值、恢复超时、半开状态)、指数退避重试、舱壁隔离,附 CircuitBreaker 实现示例。

使用方式:作为技能加载后,按“拆分—通信—数据—弹性”的顺序对照文档选择模式;参考资料包括 references/service-decomposition-guide.md 与 references/communication-patterns.md。文中代码为 Python 示例(FastAPI、httpx、aiokafka、tenacity、circuitbreaker),可作实现参考,但未提供统一的安装命令。

适用场景:单体拆分、服务边界与契约设计、事件驱动改造、跨服务一致性与高可用容错设计。

限制:资料未说明收费、价格、支持平台、运行环境要求与效果指标;未给出统一的安装步骤,仅有部分依赖库在示例中出现;具体实现需结合团队技术栈自行验证。