В настоящее время такие проблемы можно решить с помощью Comet.
Для более, http://en.wikipedia.org/wiki/Comet_(programming)
В основном браузеры используют HTTP, который является протоколом без сохранения состояния, и поскольку он работает только в запросе, а затем в ответ , мы никогда не сможем получить настоящее push уведомление. При желании отправить в браузер, мы должны каким-то образом имитировать это TCP / Socket-подобное соединение, чтобы нажать на него. Комета это просто термин, который используется для определения таких методов.
Есть много библиотек, которые помогают в этом. Например: Орбитальный, Джаггернаут на рельсах.
В новых браузерах появился протокол Websockets Protocol, и библиотеки, о которых я упоминал, также пользуются этим преимуществом. Это обширная тема, но я уверен, что вы найдете несколько базовых примеров с Juggernaut и Rails.
Существует также http://pusherapp.com,, который делает то же самое, но взимает за это деньги.