Save 37% off PRO during our Black Friday Sale! »

Amazon Event Bridge による次世代の Pub/Sub

Amazon Event Bridge による次世代の Pub/Sub

「SaaS+サーバーレス/EventBridge」で開発加速化、運用作業軽減 の登壇資料

https://pages.awscloud.com/SaaS_Svrless_EventBridge_seminar.html

https://gs2.io

62340514ee3033d54d79c9e7a3db68d5?s=128

Kazutomo Niwa

October 28, 2020
Tweet

Transcript

  1. Amazon Event Bridge による次世代の Pub/Sub

  2. 自己紹介 丹羽 一智 携帯電話向けのゲームおよびサーバ開発業務 ニンテンドー3DSのOS開発 ゲームサーバの開発・運用 Nintendo Switchのサーバシステム設計 設立 代表取締役

    に就任 2006 2009 2016
  3. ゲーム開発の効率化を実現するための Backend-as-a-Service スクラップ&ビルドを繰り返している ゲームサーバシステム開発のループから サーバレスアーキテクチャへ移行することで脱却

  4. Amazon Event Bridge

  5. これまでのメッセージング イベント元 トリガーされる 処理 イベント

  6. これまでのメッセージング イベント元 トリガーされる 処理 失敗したときどうしよう イベント

  7. これまでのメッセージング イベント元 トリガーされる 処理 イベント SQS イベント 失敗したとき再送

  8. 新しいメッセージング イベント元 トリガーされる 処理 イベント Event Bridge イベント 失敗したとき再送

  9. これまでのメッセージングの課題 SQS トリガーされる 処理 イベント is 何?

  10. これまでのメッセージングの課題 SQS トリガーされる 処理 イベント is 何? ソースは人間向け資料のみ

  11. イベント構造を管理 イベント元 トリガーされる 処理 イベント Event Bridge イベント Event Bridge

    Schema Registry フォーマットバリデーション(オプション) スキーマを登録 Schema Registry で見たやつだ
  12. イベントをフィルタ SQS Lambda イベント そのイベント興味 ないわー。捨てとこ 実行したならお金 貰いますねー

  13. イベントをフィルタ イベント元 トリガーされる 処理 リソースA or B のイベント Event Bridge

    Event Bus Event Bridge Event Rule リソースA のイベント リソースA or B のイベント Event Bridge Event Rule リソースAのイベント のみ知りたい
  14. 次世代のSNS/SQS S3 Lambda SNS SQS Event Bridge Event Bridge Event

    Bus Event Bridge Event Rule
  15. 次世代の Webhook Webhook Event Bridge Webサーバ 必要 不要 スキーマ定義 なし

    あり イベントのフィルタリング 発信元に依存 あり 疎通失敗時のリトライ 発信元に依存 あり 統一的な仕様 なし あり
  16. イベントハブによって SaaS は BaaS へ SaaS の多くは ブラウザ(UI) を軸としたサービス提供だった。 1つの

    SaaS が全てのビジネスを賄えない以上、他サービスとの連携は今後さらに 重要な要素になっていく。 そのとき、WebHook は前時代的であり、Amazon Event Bridge のような イベントバスを利用するのが主流になっていくでしょう。
  17. 実用例

  18. ゲームがサーバに求めるニーズは非常に多様 それらをすべて実現できるようにするには システムの拡張性が重要 個別案件ごとのカスタマイズをすることなく ニーズを満たせるようにするには イベントドリブンアーキテクチャが最適でした

  19. GS2 での実用例 • GS2-Account 匿名アカウントを登録。メールアドレスやパスワードの登録を後回しに。 GS2 Event Bridge アカウント新規作成 処理

    アカウントの初期設定 顧客のAWSアカウント
  20. GS2 での実用例 • GS2-Account 匿名アカウントを登録。メールアドレスやパスワードの登録を後回しに。 GS2 Event Bridge メールアドレス・パスワード または、ソーシャルアカウントを登録

    処理 非匿名アカウントの 利用状況の統計を計算 顧客のAWSアカウント
  21. GS2 での実用例 • GS2-Inventory ユーザに紐づく所持品などのリソースを管理。 所持数制限や有効期限管理といった機能も利用可能。 GS2 Event Bridge クーポンを入手・消費

    処理 クーポンの所持数量の統計を計算 顧客のAWSアカウント
  22. GS2 での実用例 • GS2-Experience 経験値・ランクを管理するサービス。 GS2 Event Bridge フォーラムにたくさん投稿して ランクアップ

    処理 クーポンをプレゼント 顧客のAWSアカウント
  23. GS2 での実用例 • GS2-Chat WebSocketを使用したリアルタイムチャット。 GS2 Event Bridge 新規メッセージを受信 処理

    メールにメッセージを転送 顧客のAWSアカウント
  24. GS2 での実用例 • GS2-Formation キャラクターの装備やパーティ編成を実現する。 GS2 Event Bridge お気に入りの動画を マイリストに登録

    処理 マイリストの登録数を カウントアップ 顧客のAWSアカウント
  25. GS2 での実用例 • GS2-Stamina 時間経過で回復するポイントを実現。 GS2 Event Bridge 漫画を読むために スタミナを消費

    処理 ライセンスサーバに 漫画を読める権利を付与 顧客のAWSアカウント
  26. GS2 での実用例 • GS2-Friend 双方向のフレンド、または単方向のフォローを管理。 GS2 Event Bridge ユーザをフォロー 処理

    フォロイーに通知 顧客のAWSアカウント
  27. GS2 での実用例 • GS2-Inbox プレゼントボックス・通知ボックスを提供。 GS2 Event Bridge メッセージを既読に 処理

    既読率を集計 顧客のAWSアカウント
  28. Thanks