0

Railsでチェスアプリを作成することを検討しています。このアプリでは、サーバーからクライアントブラウザーに非同期で(理想的にはWebSocketを使用して)移動をプッシュする必要があります。

ただし、私が行ったほとんどの調査から、HerokuはWebSocketをサポートしていないようです。ただし、websocketの代わりに長いポーリングを使用するように構成されたsocket.ioを使用する別の方法があります。

チェスの5分間の電撃戦のようなものの待ち時間要件を達成するには、長いポーリングでは不十分ですか?

4

2 に答える 2

1

Heroku CedarスタックはHTTPストリーミングとロングポーリングをサポートしています: https ://devcenter.heroku.com/articles/request-timeout#longpolling_and_streaming_responses

WebSocketをサポートしていません。ただし、Fayeのようなフレームワークを使用して、転送メカニズムとしてXHRを使用することができます。このためのプロジェクトがあるようです。参照: HerokuでFAYEをホストすることは可能ですか?

ゲームクライアントでWebSocketを使用し、Herokuでバックエンドを使用する場合、現在私が知っている唯一の解決策は、Pusher(アドオンで作業している)を使用することです: https ://addons.heroku.com/pusher

于 2013-02-17T10:34:06.380 に答える
0

Websocketにはるかに近い代替手段は、サーバー送信イベントです。これはサーバーからクライアントへの一方向です(クライアント->サーバーの方向に対して標準の要求を続けることができます)。

Herokuは、Websocketをサポートするほとんどのブラウザーと同様にサーバー送信イベントをサポートしているように見えます(IE10はサポートしていない例外です)。

于 2013-02-27T01:39:35.627 に答える