# 微服务架构模式 (microservices-patterns)

> 提供微服务的服务拆分、同步与异步通信、每服务独立数据库、Saga 以及熔断、重试、舱壁等弹性模式参考。

- 分类: [架构调优](https://www.myskills.tools/zh/categories/architecture-tuning/)
- 来源: 社区 · Seth Hobson
- 代码仓库: https://github.com/wshobson/agents/tree/main/plugins/backend-development/skills/microservices-patterns (commit 0f73766)
- SKILL.md: https://github.com/wshobson/agents/blob/main/plugins/backend-development/skills/microservices-patterns/SKILL.md
- 安装命令: `npx skills add wshobson/agents --skill microservices-patterns`
- 许可证: MIT
- 兼容工具: Claude Code, Codex, Cursor, Copilot, OpenCode
- 权限: read-repo ✓, write-files ✓, shell ✗, network ✗
- 状态: 扫描通过
- 规则扫描无法覆盖所有风险，安装前请阅读此技能的 SKILL.md，确认权限后再使用。

## 核心规则

每个服务拥有自己的数据，不共享数据库。

## 执行阶段

1. **划分服务边界** — 按业务能力或 DDD 子域划分服务，或用绞杀者模式逐步从单体中抽离。
2. **选择通信方式** — 在 REST、gRPC、GraphQL 等同步调用与 Kafka、消息队列、发布订阅等异步事件之间选择，可加 API 网关。
3. **管理分布式数据** — 每个服务独立数据库，跨服务事务用 Saga 和补偿操作实现最终一致性。
4. **加入弹性机制** — 用熔断器快速失败、指数退避重试处理瞬时故障、舱壁隔离资源以限制故障影响。

## 权限说明（据 SKILL.md 整理）

| 能力 | 是否需要 | 说明 |
|---|---|---|
| 文件写入 | 需要 | 实现微服务时按参考示例编写服务、事件和 Saga 等代码。 |
| 命令执行 | 不需要 | 这是设计参考，未要求运行任何命令。 |
| 网络外发 | 不需要 | 未要求访问外部网络或服务。 |

## SKILL.md 头部信息（YAML）

```yaml
---
name: microservices-patterns
description: Design microservices architectures with service boundaries, event-driven communication, and resilience patterns. Use when building distributed systems, decomposing monoliths, or implementing microservices.
---
```

首页: https://www.myskills.tools/zh/ · URL: https://www.myskills.tools/zh/skills/microservices-patterns/
