用途:该技能面向微服务架构设计,帮助拆分单体、划分服务边界与契约、实现服务间通信、管理分布式数据与事务,并构建具备弹性的分布式系统。
主要能力:涵盖服务分解策略(按业务能力、按 DDD 子域、Strangler Fig 渐进式抽取)、通信模式(同步 REST/gRPC/GraphQL,异步 Kafka/RabbitMQ/SQS 事件与发布订阅)、数据管理(每服务独立数据库、Saga 分布式事务与补偿动作、最终一致性)、弹性模式(熔断器、指数退避重试、舱壁隔离),以及 API 网关聚合、服务发现与负载均衡、事件驱动架构设计。
使用方式:资料给出 Python 示例,包括 OrderService/PaymentService/InventoryService 按业务能力拆分、FastAPI 实现的 APIGateway 聚合多服务数据、基于 httpx 与 tenacity 的带重试 ServiceClient、基于 aiokafka 的 EventBus 发布订阅、编排式 OrderFulfillmentSaga 及 CircuitBreaker 状态机(CLOSED/OPEN/HALF_OPEN)。示例代码保持原样,未提供安装命令或具体运行步骤。
适用场景:单体拆分、服务边界与契约设计、分布式事务处理、事件驱动架构、服务发现与容错建设。
限制与注意事项:资料列出常见陷阱,如分布式单体、服务间调用过多、共享数据库、缺少熔断与补偿逻辑、全同步通信、过早微服务化、忽视网络故障。未提供具体版本、依赖安装、收费或平台信息。