Upgrade to Pro — share decks privately, control downloads, hide ads and more …

[AWS] WebSocketへの変化点 - AWS pre:Invent2024

[AWS] WebSocketへの変化点 - AWS pre:Invent2024

k-utsunomiya

December 21, 2024
Tweet

More Decks by k-utsunomiya

Other Decks in Technology

Transcript

  1. AWSでのWebSocket実装方法に追加の選択肢が・・! AWS AppSync Events の登場 3 今日のテーマ - WebSocketへの変化点 pre:invent2024

    https://aws.amazon.com/jp/about-aws/whats-new/2024/10/aws-appsync-websocket-apis-web-mobile-experiences/
  2. AWSでのWebSocket構築方法(サーバレス) 4 今日のテーマ - WebSocketへの変化点 pre:invent2024 - API Gateway –

    Websocket(APIGWネイティブ機能) - AppSync – Subscrition(GraphQLネイティブ機能) - AppSync – Events(AppSyncネイティブ機能) ★追加 【WebSocketとは】 ウェブソケット、 単一の伝送制御プロトコル(TCP) 接続を介して 同時双方向通信チャネルを提供するコンピュータ通信プロトコルです。 単一の伝送制御プロトコル (TCP) 接続を介して同時双方向通信チャネルを提供します。 参照) https://en.wikipedia.org/wiki/WebSocket 【 AWS AppSync Eventsとは】 開発者が安全でパフォーマンスの高いサーバーレス WebSocket API を使用して、 数人または数百万のサブスクライバーにリアルタイムのイベントデータを簡単にブロードキャストできる機能です。 参照) https://aws.amazon.com/jp/blogs/mobile/announcing-aws-appsync-events-serverless-websocket-apis/
  3. AppSync Eventsの処理概要 5 今日のテーマ - WebSocketへの変化点 pre:invent2024 AWS AppSync クライアント

    ① Events API を作成(HTTPエンドポイント) サポートされている認証モードなどの基本設定を定義 ① ②チャネル名前空間を作成 ex) messages [/messages]にてpub/subが行えるようになる。 ② pub Event sub ③ハンドラの作成 ※option pub/sub時にビジネスロジックを定義可能 ③ ④pubsub実行 subコネクション確立→イベント発行→pub ※イベントはEventsBridgeなどからも実行可能。 ④
  4. WebSocket構築方式における方向性(まとめ 6 今日のテーマ - WebSocketへの変化点 pre:invent2024 再掲 - API Gateway

    – Websocket(APIGWネイティブ機能) - AppSync – Subscrition(GraphQLネイティブ機能) - AppSync – Events(AppSyncネイティブ機能) ★追加 サーバレスであれば上記、その他WebSocketサーバ構築を行う方法はあるが、 採用に関するベストプラクティスはまだない認識。 ※認証及び暗号化、セキュリティ対策はそれぞれの採用方法によりピンキリではあるが、 基本的に金融エンプラにおける規制はどの方法でもクリアできる範囲と想定。 そのため個人的な方針としてはAppSync Eventsを採用したい。 特に、GraphQLでのSubscritionにて実現する場合、同じようなチャネルの設計をDBにて行う必要があり、 更に、同じスキーマ上でのイベントしか検知しない。(テナント化する際に課題が多い) ※唯一、エンドポイントにWAFを直接アタッチできるのも良い。