Java Message Service
Java Message Service (JMS) — стандарт промежуточного ПО для рассылки сообщений, позволяющий приложениям, выполненным на платформе Java EE, создавать, посылать, получать и читать сообщения. Часть Jakarta EE.
Особенности взаимодействия в JMS
правитьКоммуникация между компонентами, использующими JMS, асинхронна (процедура не дожидается ответа на своё сообщение) и независима от исполнения компонентов.
JMS поддерживает две модели обмена сообщениями: «точка - точка» и «издатель-подписчик».
Модель «точка - точка» характеризуется следующим:
- Каждое сообщение имеет только одного адресата
- Сообщение попадает в «почтовый ящик», или «очередь» адресата и может быть прочитано когда угодно. Если адресат не работал в момент отсылки сообщения, сообщение не пропадёт.
- После получения сообщения адресат посылает извещение.
Модель «издатель-подписчик» характеризуется следующим:
- Подписчик подписывается на определённую «тему»
- Издатель публикует своё сообщение. Его получают все подписчики этой темы
- Получатель должен работать и быть подписан в момент отправки сообщения
История версий
правитьПО, поддерживающее стандарт JMS
правитьОткрытое программное обеспечение:
- Open Message Queue (Open MQ)
- Apache ActiveMQ
- OpenJMS
- JBoss Messaging
- JORAM (OW2)
- Сервер приложений Glassfish (Oracle)
- RabbitMQ
Проприетарные решения:
- TIBCO EMS
- Sonic MQ
- webMethods Broker Server
- WebSphere Application Server (IBM)
- IBM MQ (бывший IBM WebSphere MQ, изначально MQSeries)
- SAP NetWeaver WebAS Java JMS от SAP AG
- Oracle Weblogic
- Oracle Streams Advanced Queuing
- Sun Java System Message Queue, также доступный как Open Source
- Informatica
Примечания
править- ↑ JSR 343 . Дата обращения: 19 июня 2013. Архивировано 17 июня 2013 года.