0

Web サーバーで Web ソケット接続を確立しようとしています。接続はクライアントから JavaScript で実行され、Web サーバー上の php スクリプトに接続します。JavaScript も Web サーバーに配置されますが、クライアントの Web ブラウザーから実行されます。

問題は、専用サーバーを購入しない限り、hostgator がインバウンド ソケット接続を許可しないことですが、これがインバウンド ソケット接続としてカウントされるかどうかはわかりません。

それで、これがインバウンドソケット接続としてカウントされるのか、それともインバウンド接続を許可する他の Web ホスティングサイトとしてカウントされるのか、誰にもわかりませんか?

前もって感謝します :)

4

1 に答える 1

2

Websocket 接続は、受信 HTTP 接続 (通常は Web 要求に使用されているのと同じポート) として開始され、その上にいくつかのカスタム ヘッダーがあり、すべての Web サーバーが受け入れるように構成する必要があります (または、それらは受け入れられません)。 Web サーバーとして使用します)。クライアントとの簡単なやり取りの後、クライアントはアップグレードと websocket プロトコルへの切り替えを要求します (最初の接続は HTTP プロトコルでした)。HTTP 接続として開始された接続は、その後、webSocket 接続になります (Web サーバーがプロトコル スイッチに同意する場合)。

はい、これは Web サーバーへの受信接続ですが、Web サーバーが既に受け入れなければならない受信 HTTP 接続です。webSockets は、既存の HTTP ネットワーク インフラストラクチャ、ファイアウォールなどとの互換性を高めるために意図的にこのように設計されているため、(webSocket プロトコルをサポートするために) HTTP サーバー ソフトウェアをアップグレードするだけで使用でき、ネットワークを変更する必要はありません。インフラストラクチャー。


参考までに、webSockets の使用には他にもホスティングの問題があります。webSocket は、持続的で持続的なソケット接続です。これを使用するには、通常、継続的で長期的なサーバー プロセスが必要です。低コストの共有ホスティング環境の多くは、これをサポートしていません。着信 HTTP リクエストを受け入れ、それを実行するスクリプト (PHP スクリプトなど) にディスパッチし、そのリクエストで実行させ、スクリプトを終了させ、サーバー プロセスの実行を継続しない傾向があります。これは、アプリがページをアクティブに提供していないときはサーバー リソースが消費されないため、低コストの共有ホスティングに適しています。ただし、そのモデルは、webSocket を接続するための継続的なサーバー プロセスが必要な webSockets では機能しません。

ホストゲーターについては特に知りませんが、これは別の問題です。Dreamhost の共有ホスティングでは、サーバー プロセスを長時間実行することはできません。Dreamhost では、これには VPS ホスティング プランが必要であり、私が読んだ限りでは、これは他の共有ホスティング環境でも一般的です。

于 2014-12-05T00:44:09.193 に答える