Rails 3でプロジェクトを開始しましたが、通知を追加する必要があります(Facebookのように)。iPadなどのサポートデバイスにWebSocketを使用するのが最善の方法ですが、Railsに簡単に実装するための優れたツールが見つかりません。Pusherappを見つけましたが、価格が高すぎて、サードパーティの会社にデータを提供するのは賢明ではないと思います。だから必要なもの:
- オープンソース
- ある種のチャネルはサポートします
- Railsのヘルパー(およびRails 3の操作)
回答:
プレーンなWebSocket実装を検索している場合は、EM-WebSocketがおそらく最適です。非フラッシュフォールバック(古い電話やiPhone 3Gなど)のサポートが必要な場合は、Socket.IO-rackを試してください。
Pusher(認証とチャネル付き)のようなフル機能の実装には、SockyとJuggernautの2つのオープンソースの選択肢があります。
Sockyは、EM-WebSocket(プッシャーなど)を使用した純粋なRubyプロジェクトであり、Rails用の優れたツールがいくつかあります。一方、Juggernautにはより多くの履歴(およびより多くのユーザーatm。)がありますが、新しいバージョンはNode.JSに書き直され(クライアントはまだルビーベースです)、Redisが必要です。どちらも正常に動作するはずです。
フェイを見てください。
EM-WebSocketはおそらく最高のRuby実装です。実際、Pusherappはその上に構築されています。EventMachineと統合されます。
これがその使い方のチュートリアルです。
ニーズを満たすかもしれないが、少し難解なもう1つのオプションは、Jrubyアプリサーバーの1つを使用して、JavaWebSocket実装の1つを使用することです。Jetty(トリニダードの拠点)は、利用可能な最高のWebSocketサポートを備えていることで知られています。もう1つのオプション(これはかなりクールです)は、メッセージエンドポイントにWebSocketラッパーを備えたメッセージングサーバーを使用することです。例として、Torquebox(専用のJruby / Railsアプリサーバー)にはHornetMQのサポートが組み込まれており、HornetMQはWebSocketをサポートしています。