「WebSocketを使用したwebアプリケーション」は独自で開発しようとしているものでASP.NET Core SignalR アプリとは異なります。
そうですか。SignalR の話なら Microsoft のドキュメントもあるのですが・・・
役に立つかどうかわかりませんが、一部紹介しておきます。
このブラウザーはサポートされなくなりました。
Microsoft Edge にアップグレードすると、最新の機能、セキュリティ更新プログラム、およびテクニカル サポートを利用できます。
WindowsServer上で動くWebSocketを使用したwebアプリケーションの実装を検討しております。 そこで、アプリに対して冗長性を確保し可用性を高めたく調査を行っております。 Windows Serverフェールオーバークラスター (WSFC)とネットワーク負荷分散 (NLB)が候補として挙がっており、 どちらの方が適しているか判断しかねている状況です。 上記を踏まえまして、以下質問になります。
①WSFC、またはNLBを使用している状況で、WebSocketは利用可能でしょうか?
②上記のシステム構成の場合WSFCとNLB、どちらが適していますでしょうか?
③WSFCとNLB以外に可用性を高める上で、より有用な手法はありますでしょうか?
「WebSocketを使用したwebアプリケーション」は独自で開発しようとしているものでASP.NET Core SignalR アプリとは異なります。
そうですか。SignalR の話なら Microsoft のドキュメントもあるのですが・・・
役に立つかどうかわかりませんが、一部紹介しておきます。
「WebSocket 負荷分散」で Web 検索すれば結構いろんな情報がありますね。
https://www.google.com/search?q=WebSocket+%E8%B2%A0%E8%8D%B7%E5%88%86%E6%95%A3
いろいろ見ているうちで、一番簡単そうなのは DNS ラウンドロビンで負荷分散する方法のようです。あなたの要件に合うかどうかは分かりませんが、ご参考まで。
チャブーンです。
#ちょっと内容を修正しました
この件ですが、一般論としての前提ならば、Webアプリ(Webサーバー)の負荷分散にはNLBが適しています。TCP/IPスタックレベルでの対応で、ミドルウェアやアプリの調整が不要なので、...と書いたのですが、Webソケットはミドルウェアでの実装になっているのですね。であれば、対応していない可能性が高いでしょう。一応資料は継続して記載しておきます。
最近のWindowsではIISがWebソケットに対応しているということなので、MSFCで検討したほうがいいと思います。ただし、大がかりな実装(通常はActivce Directoryが必要)が必要で、設計がとても複雑になります。
https://learn.microsoft.com/ja-jp/iis/configuration/system.webserver/websocket
上記以外で何とかしたい、という場合は、負荷分散システムの外出しという選択になります。要するにロードバランサーを前に置きます。が、LBでWebSocketをサポートしているかどうかは、製品次第なので、まずはその確認からになります。高負荷に対応するLBが必要なら、ハードウェアのLBから選択する、といったことになると思います。