アーキテクチャ道場2023、設計には問題の切り分けと漸進的な改良が大切と語る
セッションはレベルに応じた技術解説から事例紹介まで、多岐にわたる内容が用意されていた。聴講者はレシーバーとイヤホンを通じてスピーカーの声を聞くのが特徴的だ。レシーバーは前の人の椅子にぶら下がっているのを使い、聞きたいセッションにチャンネルを合わせる。イヤホンは入場時に1人1つ手渡される。
人気セッションの1つ「アーキテクチャ道場 2023」を聴講した。アーキテクチャの考え方が学べるため、どのクラウドサービスでも応用が利く。ここではアマゾン ウェブ サービス ジャパン合同会社 技術統括本部 チーフテクノロジスト 内海英一郎氏が2つのお題を出し、同社 技術統括本部 インターネットメディアソリューショングループ ソリューションアーキテクト 竹本将気氏と、同社 技術統括本部 技術推進グループ シニアソリューションアーキテクト 石井陽介氏が解決策を理由とともに説明した。
お題1:オンラインボードゲームのプラットフォーム
オンラインボードゲームの新作公開に向けてゲームプラットフォームのバックエンドをオンプレミスからAWSへと刷新する。プレイヤーの増減に弾力的にサーバーフリートのリソース調整できるようにするには、コントロールプレーンをどのように設計するか。
お題1に回答したのは竹本氏。まずは問題を「サーバーとセッションのマッピング」と「オートスケーリング」に分割して整理した。前者はセッションの割り当てシーケンスで生じる課題を考慮し、インスタンスをツリー構造で管理する。後者はインスタンス単位でオートスケーリングするように解決する方法を考えた。
お題2:クラウドに移行したサービスのモダナイゼーション
すでにオンプレミスからAWSにリフトしたサービスがあり、近年技術的な課題や開発・運用負荷が高まっていることから、サービスのモダナイゼーションを進めることにした。旧サービスから新サービスへワークロードを移行する時、システム開発・運用チームはどのような手法で新サービスへと接続先を切り替えるようにするのがいいか。
お題2に回答したのは石井氏。現場からさまざまなリクエストがあるものの、主な課題を「サービス機能に関する要求」、「移行方式に関する要求」、「開発・運用容易性に関する要求」に分けた。また移行のフェーズを、インターフェース移行、アプリケーション移行、データストア移行、クライアント移行の4つに分けて実施するように考えた。
両者の解説が終わると内海氏が全体を振り返り、どちらも問題を整理してからアーキテクチャ設計に臨んでいることを挙げた。複雑なシステムや要件であるほど、問題の切り分けが欠かせない。また「シンプルな設計にすること」と「モデルと実装を分けて設計すること」の重要性を強調した。後者は、まずはアーキテクチャの骨組み(モデル)を考えてから、後から具体的なAWSサービスを割り当てていく流れになる。AWSサービスはアップデートが頻繁にあるので、最初から使用するAWSサービスを特定しないほうがいい。
最後に内海氏は「高いスケーラビリティ、耐障害性、安全性、運用性、コスト効率を備えた優れたアーキテクチャを実装することは皆さんのビジネスに必要不可欠です。ぜひAWSのベストプラクティスを活用してください」と述べ、アーキテクチャ設計で有用なリンクをいくつか紹介してセッションを締めた。
紹介されていたリンク
6月8日開催!初心者向けイベント「AWSome Day Online Conference」
「AWSome Day Online Conference」は、AWS クラウドジャーニーのはじめの一歩として、AWSクラウドに関する基礎知識を3時間で学ぶ無償のオンラインイベントです。AWSインフラストラクチャ、コンピューティング、ストレージ、データベース、ネットワークやセキュリティといったAWSのコアコンセプトやAWSの主要サービスを段階的に学ぶことができます。
7月13日開催!初心者向け大規模イベント「AWS Builders Online Series」
「AWS Builders Online Series」は、AWSの基礎を幅広く学ぶことができる、約3時間の初心者向けイベントです。AWSの基礎から生成系AIの活用、分析、サーバーレスアーキテクチャ、インダストリーソリューションなどを学ぶことができます。各セッションではデモを通じてAWSサービスの使い方を実際に体験し、理解を深めることができます。AWSに関する基礎知識を習得し、AWSを活用していくための知識を身につけたい方は、ぜひご参加ください。
6月22日、23日開催!中・上級 Developer向け「AWS Dev Day」
「AWS Dev Day」は、AWS国内イベント最大の開発者向けテクニカルカンファレンスです。今押さえておくべきクラウド開発のためのテクノロジーや手法について、技術解説セッション、ユーザー事例、デモ、ライブコーディングなど、60を超えるセッションを通じて網羅的に学ぶことができます。また今回は、ベルサール渋谷ガーデンにてリアルイベントとして開催され、開発者同士が交流できる「ネットワーキングエリア」が登場します。多彩なセッションとネットワーキングエリアを通じて、学びを深め、同時に開発の楽しさを再認識しましょう!