0

これは一種の新しい質問かもしれません。Node.jsでこの種のことを非常に簡単に実行できることは知っていますが、それが何と呼ばれるかはわかりません。また、Googleにはあまり幸運がありません。

基本的に、私はRubyonRailsを使用して単純な三目並べサーバーを構築しようとしています。プレーヤーは互いに接続し、動きが記録され、結果がライブで処理されます。ユーザーにサーバーにメッセージを送信させるだけの場合は、AJAXを使用して簡単に実行できます。ただし、クライアントがサーバーを待機して、他のプレーヤーが移動したことを指摘し、それに自動的に応答するようにします。サーバーにAJAXを絶えずpingすることでこれを行うことができますが、もっと良い方法があるはずです。どう説明したらいいのか、何と呼ばれるのかよくわからないからといって、まだ見つけていない大きな技術が欠けているような気がします。

クライアントをサーバーに直接接続して、ライブ接続を維持したいですか?もしそうなら、私はそれをどのように行うでしょうか?そうでない場合、これを行うためのより良い方法は何ですか?オンラインゲーム、株式相場表示、ストリーミングサービスは、どのようにクライアントにコンテンツを提供しますか。また、Railsは、同様のことを行うためにどのようなツールを提供してくれますか。

4

2 に答える 2

0

ルビーのイベントマシンをチェック

いくつかのリンク

https://github.com/eventmachine/eventmachine/wiki

http://20bits.com/article/an-eventmachine-tutorial

http://rubysource.com/introduction-to-event-machine

物事を簡単にするfayeとprivate_pubの宝石があります。

利用可能なレールキャストがあります。

http://railscasts.com/episodes/260-messaging-with-faye

http://railscasts.com/episodes/316-private-pub

ほとんどの質問を解決できるeventmachineを使用するfayeの上に構築されたprivate_pubを試すことをお勧めします

pub / subモデルは、クライアントがそのチャネルにサブスクライブするのに役立ちます。そのため、最終的にクライアントに渡されるチャネルに更新をプッシュできます。

あなたの質問と私の答え

Q.クライアントをサーバーに直接接続して、ライブ接続を維持したいですか?もしそうなら、私はそれをどのように行うでしょうか?

A. private_pubまたはfayeを使用して、長い接続を確立し、データをプッシュすることもできます。これらが商用ベースでサービスを提供しているpusher.comについては、後で確認してください。

Q.オンラインゲーム、株式相場表示、ストリーミングサービスはどのようにコンテンツをクライアントに提供しますか?また、Railsはどのようなツールを使用して同様のことを実行できますか?

A. AFAIKは、誰もが何らかのプッシュテクノロジーを使用しています。pub/subモデル。rubyには、そのような要件に対応できるいくつかのgemがあり、fayeprivate_pubにはそれらのいくつかがあります。

于 2012-07-28T20:11:14.083 に答える
0

商用ソリューションについては、Pusherをチェックしてください。それはあなたが望むことをほぼ正確に実行します:http:
//pusher.com/

オープンソースソリューションについては、Faye(pub / subメッセージングサーバー)をチェックしてください:http:
//faye.jcoglan.com/
とそれを説明するいくつかの素晴らしいrailscasts:http:
//railscasts.com/episodes/260-messaging-with-フェイ
http://railscasts.com/episodes/316-private-pub

于 2012-07-28T20:12:57.073 に答える