Лучший инструмент Ruby on Rails WebSocket [закрыто]


Я начал проект в Rails 3, и мне нужно добавить уведомления(например, Facebook one). Лучшим способом было бы использовать WebSocket для устройств поддержки, таких как iPad, но я не могу найти хороших инструментов для легкой реализации его в Rails. Я нашел Pusherapp, но цены на них подавляющие, а также я не думаю, что предоставление моих данных сторонней компании было бы разумным. Так что вещи нужны:

  • Open Source
  • какая-то поддержка каналов
  • помощники для рельсов(и работая с Rails 3)
4 79

4 ответа:

Если вы ищете простой реализации WebSocket, то EM-WebSocket - Это, наверное, лучший. Если вы хотите поддержку для non-flash fallback(например, старые телефоны или iPhone 3G), вы должны попробоватьSocket. IO-rack.

для полнофункциональных реализаций, таких как Pusher(с аутентификацией и каналами), у вас есть два варианта с открытым исходным кодом: Фу и Джаггернаут.

Socky-это чистый рубиновый проект с использованием EM-WebSocket(например, pusher) и у него есть некоторые хорошие инструменты для рельсов. С другой стороны, у Juggernaut больше истории(и больше пользователей atm.) но новая версия была переписана на Node.JS (клиент по-прежнему основан на ruby) и требует Redis. Оба должны работать нормально.

посмотри Фэй.

EM-WebSocket вероятно, лучшая реализация Ruby. На самом деле, Pusherapp построен на нем. Он интегрируется с EventMachine.

вот учебник о том, как использовать его.

другой вариант, который может удовлетворить ваши потребности, но немного более эзотерическое, чтобы пойти с одним из Jruby appservers и использовать одну из реализаций Java websockets. Причал (база для Тринидада), Как известно, имеют лучшую поддержку websockets доступны. Другой вариант (что довольно круто) - использовать сервер обмена сообщениями с оболочками websocket для конечных точек сообщений. В качестве примера,Torquebox (выделенный JRuby / Rails appserver) имеет встроенная поддержка HornetMQ, которая в свою очередь имеет поддержка websockets.