サーバーレスアプリケーション設計
パターンの組み合わせによる設計例
「典型的な形 + 組み合わせ」でアプリケーション全体設計に向かうことができます。「形で考えるサーバーレス設計」のどのユースケースパターンの組み合わせなのか、見比べながら確認してみてください。
要件から紐解く、サーバーレス設計
モバイルアプリケーション
要件: モバイルアプリから随時データが送信されてくる。その情報を受信し、データの加工・集計をして、タイムリーに可視化したい。
選択されたユースケースパターン:
- 動的 Web/モバイルバックエンド
- ログデータ収集処理
- シンプルなデータ加工
- 加えて BI ツールを使って可視化する部分を追加

IoT アプリケーション
要件: 機器から随時データが送信され、そのデータを収集し、機械学習させる。また、モバイルアプリから機器の遠隔操作を可能にする。一部の機器については Alexa によるボイス操作を可能にしたい。
選択されたユースケースパターン:
- IoT バックエンド
- モバイルバックエンド
- Alexa スキル
- ログデータ収集処理
- 機械学習パイプライン

一連のデータ処理実装
要件: 連続的にデータが流入。それらに対して随時加工・集計などの処理を実施、定期のバッチジョブで最終データを活用。
選択されたユースケースパターン:
- シンプルなデータ加工
- イベント駆動の処理連携
- バッチジョブ/ETL 処理フロー
- スケジュールジョブ

ログデータ分析 / SIEM
要件: 顧客システム、AWSサービスのログ、IPSログなどを統合監視したい。ログデータの増加に対応できるスケーラビリティを確保しつつ、監視システムとしての運用工数を抑えたい。
選択されたユースケースパターン:
- シンプルなデータ加工
- イベント駆動の処理連携
- + 可視化(OpenSearch)

こちらの動画もご覧ください
サーバーレスアーキテクチャの形で考えられるようになったら、それをそのまま設計フェーズで実施しましょう。ビジュアルで設計して、そのまま IaC としてデプロイできるツールで、設計のスピード化やチーム間コミュニケーションの向上が期待できます。