Socket.IO は、Web クライアントとサーバー間のリアルタイム、双方向、およびイベントベースの通信を可能にするライブラリです。 従来、Socket.IO は、サーバーがすべての通信ロジックを処理し、永続的な接続を維持するサーバークライアント アーキテクチャで動作します。
サーバーレス コンピューティングの導入が進むにつれて、新しいモードである Socket.IO サーバーレス モードが導入されます。 このモードにより、Socket.IO はサーバーレス環境で機能し、RESTful API または Webhook を介して通信ロジックを処理し、スケーラブルでコスト効率の高いメンテナンスフリーのソリューションを提供できます。
既定モードとサーバーレス モードの違い
機能 | 既定モード | サーバーレス モード |
---|---|---|
Architecture | サーバーとクライアントの両方に永続的な接続を使用する | クライアントは永続的な接続を使用しますが、サーバーは RESTful API と Webhook イベント ハンドラーをステートレスな方法で使用します |
SDK と言語 | 公式の JavaScript サーバー SDK と Extension library for Web PubSub for Socket.IO SDK が必要です。すべての互換性のあるクライアント | 必須の SDK や言語はありません。 Socket.IO 関数バインドを使用して、Azure Function との統合を簡略化します。すべての互換性のあるクライアント |
ネットワーク アクセシビリティ | サーバーは、サービスに事前に接続するため、ネットワーク アクセスを公開する必要はありません | サーバーは、サービスへのネットワーク アクセスを公開する必要があります |
機能のサポート | サポートされていない一部の機能を除き、ほとんどの機能がサポートされています。Socket.IO のサポートされていないサーバー API | サポートされている機能の一覧を参照してください。サポートされている機能と RESTful API |
次のステップ
この記事では、Socket.IO の Web PubSub のサーバーレス モードの概要について説明します。