Полагаю, это зависит от того, что вы подразумеваете под реальным временем ... Ни JMS, ни HTTP, по моему мнению, не поддерживают приложения в реальном времени, а это означает, что они не могут обеспечить предсказуемую / детерминированную производительность или должным образом расставить приоритеты для потоков в присутствии раздор.
Отчасти это то, что эти технологии построены на основе TCP, который сериализует весь трафик в единый FIFO, что означает, что разные потоки трафика не могут быть легко расставлены по приоритетам. Более того, таймеры TCP нелегко контролировать, что приводит к непредсказуемым блокировкам и тайм-аутам ... По этой причине многие потоковые приложения используют UDP вместо TCP в качестве базового протокола.
Другая проблема с JMS заключается в том, что в типичных реализациях используется брокер, который централизует диспетчеризацию сообщений. Это не лучшая архитектура для достижения детерминированной производительности.
Если вы ищете промежуточное программное обеспечение, которое может предложить вам гарантии надежности и семантику публикации-подписки, которые вы получаете с JMS, но оно было разработано с учетом предметной области приложения реального времени, я рекомендую вам взглянуть на данные OMG. -Распределительная служба (ДДС). См. Dds.omg.org и эту статью, в которой я написал, где объясняется, почему DDS является лучшим промежуточным программным обеспечением для реализации SOA в реальном времени. http://soa.sys -con.com / node / 467488