システムアーキテクチャ ABEMAでは、リアルタイムプロトコルを各マイクロサービスで個別に実装するのではなく、WebSocket、SSE、Polling をサポートするリアルタイムゲートウェイを別途配置する方式を採用しています。これにより、各マイクロサービスはリアルタイム通信方式や接続状態を直接管理する必要がなく、特定のタイミングでユーザーへイベントを通知したい場合には、リアルタイムサービスに対して標準化された RPC リクエストを送信するだけで、リアルタイムメッセージを配信することが可能です。このような構成により、リアルタイムプロトコルに関する実装および運用の責務をリアルタイムゲートウェイに集約し、マイクロサービス間の結合度を低減するとともに、各サービスが本来のドメインロジックに集中できるようにしています。 Fastly Fanout リアルタイムシステムの実装にあたり、ABEMAでは

