![[レポート] 【D-6】 「アーキテクチャ道場」 に参加しました #jawsdays2025 #jawsug #jawsdays2025_d](https://images.ctfassets.net/ct0aopd36mqt/5lqlZrUocbMciBtGGxa1rM/981f1c9eec7e5d5e2ea89fd0d7d655ba/jaws-days-2025_1200x630.png)
[レポート] 【D-6】 「アーキテクチャ道場」 に参加しました #jawsdays2025 #jawsug #jawsdays2025_d
コーヒーが好きな emi です。
2025/3/1 に開催された「JAWS DAYS 2025」 にて 「アーキテクチャ道場」 というワークショップに参加しましたので、レポートします。
JAWS DAYS における『アーキテクチャ道場』とは?
AWS での最適なアーキテクチャ設計を学習するための 実践的なワークショップ です。
参加者同士でチームを組み、講師から出されたお題に対してチームで協力しながらアーキテクチャの設計・検討を進める 「グループワーク形式」 のワークショップです。チームで協力しながら限られた時間内でより適切なソリューションを導き出します。
各チームごとに検討したアーキテクチャの図と推しポイントをスライドにまとめる必要があるため、持ち物はノートパソコンが指定されています。
ちなみに AWS Summit でも同名の 『アーキテクチャ道場』 というセッションがここ数年行われています。こちらは AWS の SA さんがパネルディスカッションのような形式でその場で与えられたお題に対してアーキテクチャを考えていくという内容で、ワークショップ形式ではありません。こちらも毎年評価の高いセッションとなっています。
事前準備
さて、アーキテクチャ道場はワークショップ形式であるため、JAWS DAYS 2025 自体の申し込みとは別に、事前に申し込みが必要となっています。
また、当日はセッション説明、グループに分かれて自己紹介、ワークショップ本体、最終発表、締めの挨拶まで含めて 80 分しかありません。
そのため、以下の事前説明会でアーキテクチャ道場の説明、お題の事前開示、質疑応答が行われました。
この事前説明会は当日のアーキテクチャ道場参加者以外も申し込み可能でした。私はこの事前説明会の日に別の予定があり、事前説明会に参加できませんでした。
が、後日この事前説明会の資料と当日のお題を Doorkeeper から連絡していただけました。そのため前日までに資料を読み込み、どんなシステムでどんな要件があるのかを事前に把握することができました。
当日ワークショップ開始
アーキテクチャ道場の参加者は時間前に受け付け列に並びます。事前申し込みページの QR コードをスタッフに方に読み取っていただき、グループに分かれて座ります。グループは各 4 名程で 13 チーム程あり、あらかじめチームメンバーが決まっていて、名前がかかれたチーム番号の席に座る形式になっていました。
着席して時間になると、運営の方からの説明が始まります。当日のタイムテーブルの共有と、お題のざっくりとした説明をしていただきました。
私たちは架空の企業 サメシャイン水族館システム更改プロジェクト に取り組むエンジニアになりきります。株式会社サメシャイン水族館 CIO より、水族館や事業概要の説明を聞きます。
ホホジロザメの人気とともに土日祝の予約が可能になったタイミングでスパイクアクセスによるサイト停止が発生し、復旧までに時間がかかる事象が頻発しています。餌やりやショーの時間は予約が人気な時間帯があったりします。
サメシャインファンクラブの会員は予約がスムーズにできる、会員数は約 xx 名、オンプレミスのハードウェア機器の保守期限が迫っている、UI がレスポンシブなデザインではない、餌代・ガス代の高騰、獣医やお土産業者とのシステム連携…等々、様々な要件が事前資料に記載されています。なかなかボリューミーな要件です。
- 運用時のコスト削減(作業者の工数、AWS費用)は最重要課題
- モダンなアーキテクチャ
- AWS Well-Architectedを意識した構成
なども要件にあげられました。
約 40~50 分程度、各チームに時間が与えられました。自己紹介と役割分担をした後、議論に入ります。
このようなビニールのシートとマーカーが配られ、話したり書いたりしながら議論します。
私たちのチームは事前にアーキテクチャを考えてきてくれた天才の方がおりましたので、それをもとに議論しました。
- スパイク時はデータを SQS に溜めておいてゆっくり処理させるのはどうか
- 会員認証で Cognito を導入するのはよさそうだけど、導入につらみがあるような話を聞いたことがある
- Lambda などのサーバレスアーキテクチャもアリだけど、大量のアクセスやスパイクに耐えられないのでは?
- 静的ページは S3 から CloudFront 経由で配信して、予約などの処理が必要なものは ECS で処理しよう
- 予約がスパイクすることが予想される時間帯は Auto Scaling をスケジュールしておこう
- WAF でセキュリティ対策しよう
- VPN や専用線をやめてコスト削減しよう
- エンドユーザー用のサイトと管理者用のサイトは分けるが、ALB を二つにするとコストがかかるのでパスベースルーティングやホストベースルーティングで振り分けよう
- データベースは Aurora にしよう
- 分析要件があるから QuickSight で可視化しよう
- 分析用のデータは Aurora から直接取ると負荷がかかりそうなのでリードレプリカからもってこよう
- でもリードレプリカもコストがかかりそう
- 常時リードレプリカをたてておくより夜間バッチなどで S3 にデータをコピーしておく方が安く済むかも
- CloudFront VPC Origins でプライベートサブネットのリソースを直接 CloudFront から参照しよう
などなど、覚えている範囲ではこんなことを議論しながらアーキテクチャを考えました。
できたアーキテクチャ
時間内にまとめたアーキテクチャはこちらです。
pptx のアイコンが事前に配布されていましたが、チームに draw.io が得意なメンバーがいてくれたので、draw.io で綺麗な図を作っていただきました。議論も盛り上がりとても楽しく取り組めました。
「最後に 3 チーム前に出て発表してください」 と言われていたのですが、「絶対発表しましょう!」 とチームで盛り上がりましたので、一番最初に挙手しました。
ちなみにチーム名は議論中にスタッフさんから配られたお菓子(ブラックサンダー)からつけたのですが、他のチームは普通に「チーム 8」、「チーム 13」 などの番号だったので、ちょっと遊び過ぎたかもしれません。でも楽しかったので良かったです。
発表とまとめ
発表は Zoom で画面共有しながら行われました。
私たちの他 2 チームは DynamoDB や API Gateway、Lambda を使ったモダンアーキテクチャでした。確かに DynamoDB もアリだったね、と、他チームのアーキテクチャを見ながらチームで少し振り返りました。
最後に運営の方からコメントをいただきます。
アーキテクチャに正解はなく、より良いものを考え続けることが大事であるというメッセージをいただきました。
回答例などが発表されるのかと思っていたのですが、確かに正解はないし、私たちなりにチームメンバーの知見と知恵を振り絞りながら取り組んだので、考え続けることの大切さと楽しさは学べたと思います。
アーキテクチャの観点として
- 信頼性
- 可用性
- 保守性/運用性
- セキュリティ
- コスト
があげられました。
アーキテクチャ検討のステップの例として、以下のような方針を紹介いただきました。
- Step1. プロトタイプの時点ではセキュリティを考慮し過ぎない
- Step2. セキュリティとメンテナンス性を考慮
- Step3. 本番運用を考慮しサービスとセキュリティのバランスをとる
ノベルティ
アーキテクチャ道場参加者には議論中に以下のエコバックとお菓子が配られました。
感想
アーキテクチャをワイワイしながら考えるのはすごく楽しかったです。チームメンバーが準備してきてくれていたり、図を作成してくれたりしたおかげでかなりスムーズに取り組めたと思います。圧倒的感謝です。
個人的な反省ですが、事前説明会に参加しておいた方が良かったなと思うのと、システムの特徴、要件、ビジネス上の検討事項などが結構たくさんあったので、事前資料をじっくり読み込む時間が取れたらよかったなと思いました。
個人的にはメンバーの皆さんと仲良く取り組めたのが一番嬉しかったです。
アキキー さん、ピジョン さん、mksamba さん、ありがとうございました!!
本記事への質問やご要望については画面下部のお問い合わせ「DevelopersIO について」からご連絡ください。記事に関してお問い合わせいただけます。