Почему вы просто не пишете свое приложение на открытом стандарте, таком как JMS, и позволяете клиентам сидеть на шине JMS в качестве клиентов сообщений? Весь смысл websockets заключается в том, чтобы принести любой собственный TCP-протокол непосредственно клиенту, а не преобразовывать его с вашего конца на http-запрос/ответ.
Ваши задние службы будут разговаривать с брокером JMS, таким как ActiveMQ, и ваши клиенты говорят AMQP в браузере с помощью Javascript API, который выглядит так же, как JMS API на Java. Все, что вам нужно для этого - это шлюз websocket, например Kaazing имеет такой шлюз, все, что он делает, направляет ваш трафик JMS TCP на веб-клиентов через веб-узлы. Они также обеспечивают разветвление, так что вы не перегружаете свою JMS-шину, т. Е. Вы просто используете несколько соединений с брокером, чтобы разгрузить миллионное соединение с клиентом браузера.
Суть в том, что вам не нужно связывать себя с какой-либо конкретной платформой. Придерживайтесь стандартов, таким образом у вас есть 100% -ная свобода для замены компонентов по мере изменения вашей среды.
JEE7 теперь поддерживает Websocket. См. Ответ SO [здесь] (http://stackoverflow.com/a/18555847/1285418). –