Двунаправленный JSON- в реальном времени Связь RPC через HTTP

Я создаю сервер JSON-RPC, который принимает запросы через HTTP. Я хотел бы поддерживать двунаправленную связь (и клиент, и сервер могут отправлять запросы), конкретным вариантом использования является архитектура публикации / подписки, когда клиент отправляет запрос subscribe (X) и принимает запросы изменено (X) в (почти) реальном времени. Насколько мне известно, есть несколько способов реализовать это с помощью HTTP:

  • длинный опрос
  • WebSockets
  • вызовы опроса с использованием модели сеанса на основе файлов cookie
  • потоковая передача (сохранение HTTP-соединения открытым)
  • сочетание некоторых из вышеперечисленных

Я ищу решение, основанное на принятых интернет-стандартах (если возможно), которое можно использовать из веб-браузера и с которым легко работать на стороне клиента . Пока что я предпочитаю потоковую передачу (Twitter, CouchDB делают это таким образом), но я не уверен, насколько хорошо это поддерживается в браузерах и библиотеках JSON-RPC. Также, могут быть другие способы сделать это, о которых я не знаю.

Заранее благодарю.

6
задан Felix Lange 28 January 2011 в 01:41
поделиться