JBoss EAP 7消息系统
JBoss EAP 7消息服务
JBoss EAP 6的消息系统是通过HornetQ实现,这是一个JBoss的社区项目。后来HornetQ捐献给了Apache ActiveMQ项目,HornetQ社区加入对HornetQ的支持,并创建了新的消息系统Apache ActiveMQ Artemis,这就是JBoss EAP 7所使用的消息系统。Apache ActiveMQ Artemis提供了对JBoss EAP 6的兼容性支持,对HornetQ也提供了协议上的支持。
消息系统
经典的JMS 1.1系统API组成如下:
JMS 2.0系统API组成:
Apache ActiveMQ Artemis核心API
Apache ActiveMQ Artemis内核API中,把JMS Queue和Topic统一包装为一个地址(address),无差别作为核心queue操作,并以"jms.queue"为前缀。对于JMS topic,可以绑定一个或者多个queue到核心queue(Topic的表示)上,这些queue的地址被当做这个Topic的订阅(subscription)。对于JMS Queue,有唯一的queue绑定到该核心queue(Queue的表示),表示这个JMS Queue。
核心API是JMS之外的客户端API,一般可以提供比JMS更丰富的功能。
JBoss EAP 7的Apache ActiveMQ Artemis集成
一些绑定规范
- 对于可以远程访问的Queue或者Topic需要以“java:jboss/exported” 开头的命名空间(namespace)
- 远程客户端必须通过“java:jboss/exported”之后的文本字段查找,如testQueue的entries为“
jms/queue/test java:jboss/exported/jms/queue/test
”,远程客户端只能通过“jms/queue/test
”来查找Queue,而本地客户端可以通过java:jboss/exported/jms/queue/test
,java:jms/queue/test
,或者“jms/queue/test
”来查找。
- 远程客户端必须通过“java:jboss/exported”之后的文本字段查找,如testQueue的entries为“
- 操作方式有CLI或者web admin console。
Apache ActiveMQ Artemis总览
消息API和协议
一些标准的消息系统操作方式,也是Apache ActiveMQ Artemis已经支持的协议:
Apache ActiveMQ Artemis协议
- AMQP
- OpenWire
- MQTT
- STOMP
- HornetQ (for use with HornetQ clients).
- CORE (Artemis CORE protocol)
Artemis架构
内核架构
Stand-alone server架构
应用内嵌支持(Application embeded support)
与JavaEE应用服务器的集成架构
posted on 2017-04-25 18:40 JeromeTang 阅读(1037) 评论(0) 编辑 收藏 举报