HTTP-шаблоны кометы в Java - PullRequest
6 голосов
/ 06 февраля 2010

Я пишу / портирую C ++ HTTP-сервер событий на Java. Мне интересно, каковы лучшие парадигмы для реализации кометы с Jetty, Tomcat, любым другим сервером или нативно.

  • Резьбовой
  • Продолжения
  • NIO
  • Сервлет 3.0

Масштабируемость является абсолютной необходимостью, так как я разрабатываю новый протокол, который использует до 3 одновременных соединений на клиента.

Любая помощь приветствуется.

PS: Если возможно, я хотел бы также увидеть некоторые примеры кода или учебные пособия ..

Ответы [ 5 ]

2 голосов
/ 06 февраля 2010

Мы добились большого успеха с функциями LongPoll от Caucho Resin (большая часть данных для нашего пользовательского интерфейса поступает через Comet). Caucho также добавил поддержку WebSockets , поэтому, если у вас есть клиент HTML 5, вы тоже можете воспользоваться этим.

В Linux у них есть некоторый пользовательский код JNI, который напрямую обращается к epoll, что позволяет серверу хорошо масштабироваться.

0 голосов
/ 10 января 2011

Взгляните на эту статью , она может быть информативной о некоторых непроверенных мифах в комете

0 голосов
/ 15 февраля 2010

Я изучал комету последние пару дней. Моя компания использует Tomcat в разработке и WebLogic в производстве. Мы хотели бы включить Comet, не встряхивая наше существующее приложение. Я был впечатлен API Атмосферы. Он ориентирован на серверную часть, что обеспечивает мобильность при одновременном использовании преимуществ серверных функций, таких как NIO. Кажется, они выпускают обновления каждый месяц. https://atmosphere.dev.java.net/

0 голосов
/ 12 февраля 2010

Или вы можете оставить Comet и перейти на WebSockets: http://www.jWebSocket.org

0 голосов
/ 08 февраля 2010

У Glassfish есть встроенная поддержка комет, и я подумал, что для поддержки комет в tomcat от команды Glassfish была WAR. Причал также, кажется, ведет толпу. Я неправильно понимаю, но почему вы пытаетесь повторно внедрить комету в сервер приложений Java?

...