mybook
12

アーキテクチャパターン入門

MVC・レイヤード・イベント駆動など、システム設計の定番パターンを Rails と AWS で学ぶ

1
プロローグ — なぜアーキテクチャパターンを学ぶのか

新人エンジニアのユウキが先輩アヤカに出会い、アーキテクチャパターンの必要性を知る物語の始まり

2
MVCパターン — Railsの心臓部

Model・View・Controllerの役割を理解し、Railsでのクリーンな実装を学ぶ

3
レイヤードアーキテクチャ — 責任を分離する

プレゼンテーション層・ビジネス層・データ層に分けることで、変更に強いコードを作る

4
リポジトリパターン — データアクセスを抽象化する

ActiveRecordを直接使わず、リポジトリ経由でデータアクセスを統一。テストと変更に強いコードへ

5
イベント駆動アーキテクチャ — 非同期の力

AWS SQS/SNSとActiveJobを使って、疎結合な非同期処理システムを構築する

6
パイプ&フィルタパターン — データの流れを設計する

Rackミドルウェアの仕組みとAWS Step Functionsで学ぶ、データ変換パイプラインの設計

7
CQRSパターン — 読み書きを分離する

コマンドとクエリを分離し、読み取りレプリカとキャッシュを活用したスケーラブルな設計

8
サーガパターン — 分散トランザクションを管理する

マイクロサービス間の整合性を保つサーガパターン。補償トランザクションで失敗を安全にロールバックする

9
ストラングラーフィグパターン — レガシーを段階的に置き換える

モノリスを止めずにマイクロサービスへ移行する。CloudFrontを使った段階的なトラフィック切り替え

10
サーキットブレーカーパターン — 障害の連鎖を断つ

外部API呼び出しの失敗を検知して回路を遮断。システム全体の崩壊を防ぐフォールトトレランス設計

11
バックプレッシャーパターン — 過負荷を制御する

レート制限・キューイング・AWS API Gatewayで、処理能力を超えたリクエストを安全に制御する

12
エピローグ — パターンを組み合わせる力

12週間の旅の総まとめ。複数パターンを組み合わせた実践的なアーキテクチャ設計と、ユウキの成長