mcpField
M
microservices-patterns

microservices-patterns

github.com/nickcrew開発6678 回インストール19 週間前に更新
リポジトリ

microservices-patterns について

microservices-patternsは、マイクロサービスの設計、実装、運用を支援するガイダンススキルです。サービス境界、通信、データ管理、レジリエンス、可観測性、デプロイの資料を必要に応じて参照できます。

主な機能

  1. 01サービス分割のガイダンス
  2. 02同期・非同期通信パターン
  3. 03データ整合性とトランザクション
  4. 04レジリエンスと可観測性の実践
  5. 05デプロイと移行の戦略

活用シーン

  1. 01モノリシックアプリのサービス分割
  2. 02サービス通信とAPI契約の設計
  3. 03サービス間のデータ整合性の計画
  4. 04耐障害性のあるデプロイと移行の準備

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/nickcrew/claude-cortex --skill microservices-patterns

インストール後、Claude Code で/microservices-patternsを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

references/
communication-patterns.md
data-management.md
deployment-migration.md
observability.md
resilience-patterns.md
service-decomposition.md
validation/
rubric.yaml

詳細

マイクロサービスアーキテクチャのパターン

マイクロサービスアーキテクチャの設計、実装、運用に関する専門的なガイダンスです。

このスキルを使用する場面

  • モノリシックアプリケーションをサービスに分割する
  • 分散システムをゼロから設計する
  • サービス間通信パターン(同期/非同期)を実装する
  • サービス間のデータ整合性を管理する
  • 回復力のある分散システムを構築する
  • サービス境界と API コントラクトを定義する

基本原則

  1. 単一責任 - 各サービスが変更される理由は1つだけです
  2. 独立したデプロイが可能 - デプロイ時に連携する必要はありません
  3. データの分散管理 - 各サービスが自身のデータを排他的に所有します
  4. 障害を前提とした設計 - 障害を受け入れ、回復力を構築します
  5. すべてを自動化 - デプロイ、スケーリング、復旧を自動化します

クイックリファレンス

必要に応じて詳細なパターンを読み込みます。

タスクリファレンスの読み込み
サービス境界を定義し、モノリスを分解するskills/microservices-patterns/references/service-decomposition.md
サービス間通信(同期/非同期)を実装するskills/microservices-patterns/references/communication-patterns.md
データ整合性とトランザクションを管理するskills/microservices-patterns/references/data-management.md
回復力のあるシステムを構築する(サーキットブレーカー、再試行)skills/microservices-patterns/references/resilience-patterns.md
可観測性を追加する(トレーシング、ロギング、メトリクス)skills/microservices-patterns/references/observability.md
デプロイと移行を計画するskills/microservices-patterns/references/deployment-migration.md

ワークフロー

1. 要件を把握する
  • ビジネス機能とドメインを整理する
  • スケーラビリティと回復力のニーズを評価する
  • チームの境界を特定する
2. サービス境界を定義する

以下については references/service-decomposition.md を読み込みます。

  • ビジネス機能の分解
  • DDD の境界づけられたコンテキスト
  • サービス境界の検証
3. 通信を設計する

以下については references/communication-patterns.md を読み込みます。

  • 同期:API Gateway、REST、gRPC
  • 非同期:メッセージキュー、Pub/Sub、イベントソーシング
4. データを管理する

以下については references/data-management.md を読み込みます。

  • サービスごとのデータベースパターン
  • Saga 分散トランザクション
  • CQRS による読み取り/書き込みの最適化
5. 回復力を構築する

以下については references/resilience-patterns.md を読み込みます。

  • サーキットブレーカー
  • 指数バックオフによる再試行
  • バルクヘッド分離
  • レート制限とタイムアウト
6. 可観測性を追加する

以下については references/observability.md を読み込みます。

  • 分散トレーシング
  • ログの一元管理
  • メトリクスとモニタリング
7. デプロイを計画する

以下については references/deployment-migration.md を読み込みます。

  • ブルーグリーン、カナリア、ローリングデプロイ
  • ストラングラーフィグ移行パターン

よくある間違い

  1. 分散モノリス - 密結合されており、まとめてデプロイする必要があります
  2. 共有データベース - 複数のサービスが同じデータベースにアクセスします
  3. チャッティー API - 同期的なサービス呼び出しが過剰です
  4. サーキットブレーカーの欠如 - 連鎖障害を防ぐ仕組みがありません
  5. 可観測性がない - トレーシング、ロギング、メトリクスなしでデプロイします
  6. ネットワーク障害の無視 - ネットワークが常に信頼できると想定します
  7. API バージョニングがない - バージョニングせずに互換性を損なう変更を行います

解決策:具体的な解決方法については、関連するリファレンスファイルを読み込みます。

リソース

  • 書籍:「Building Microservices」(Newman)、「Microservices Patterns」(Richardson)
  • サイト:microservices.io、martinfowler.com/microservices
  • ツール:Kubernetes、Istio、Kafka、Kong、Jaeger、Prometheus

コメント