Heroku と互換性のある最高の Ruby チャット gem/プラグインを教えてください。これに Node.js を使用できますか? Node.js は Rails 3 とうまく連携しますか?
2 に答える
オープンソースのチャット ジェムを Heroku と互換性があるようにアップグレードする作業を行っています (近いうちにうまくいけば)。それはマッドチャッターと呼ばれています。すぐに、Rails アプリケーションと簡単に統合できるようになります。
Heroku は HTTP ロング ポーリングをサポートしていますが、Web ソケットはサポートしていません。Web ソケットは素晴らしい新技術ですが、Heroku がサポートするまでは、ロング ポーリングをサポートする gem を探す必要があります。
一般的なソリューションの 1 つは Socket.io を使用することですが、これは node.js で実行するためのものです。Juggernaut は (node.js サーバーとして) このように動作しますが、Ruby からアクセスできるように各メッセージを Redis データベースに保存する点が異なります。Juggernaut に対する私の唯一の批判は、それを起動して実行するために非常に多くの要素が関係しているということです。
Faye は、ロング ポーリングをサポートするライブラリであり、オプションで Redis を使用してメッセージを保存できる純粋な Ruby 実装として利用できます。Faye を使用することにしたのは、展開の依存関係が単純に少ないからです。
他にも選択肢があると思いますが、Faye が非常に人気のあるソリューションであることは知っています。そうは言っても、これらは単なるコミュニケーションの宝石です。これらは、チャット アプリの基盤にすぎません。必要な機能の種類に応じて、いくつかの異なる「チャット ジェム」オプションがあります。しかし、Faye を使用すると、独自の単純なチャット アプリを実装できます。
Ruby on Rails 用のJuggernautプラグインは、サーバーが接続を開始してデータをクライアントにプッシュできるようにすることで、Rails アプリに革命を起こすことを目的としています。 http://juggernaut.rubyforge.org/。