消息中间件功能对比
几个月之前刚刚调研这部分时写的,有些东西已经和目前的理解不一样了,仅留存。可部分参考。
版本WebSockets
大部分是通过stomp来实现的其他语言互通,比较cool的是WebSockets(基于stomp),是HTML 5引入的一个东东。其他如Ajax是通过Servlet。
还有一部分是通过OpenWire。
Enterprise Integration PatternsOpenWire
.
?
?
J也挺自信,而且可以换持久化实现:
JORAM provides message persistence usingits own built-in high performance journal.
The JORAM persistence system is completely pluggable, it defines a ServiceProvider Interface (SPI) that you can implement in order to plug-in a newimplementation.
JORAM is shipped with additionnal persistence modules using relationaldatabases for example.
三个都有,我认为openmq这部分做得够用了,甚至是很好了。
advisory messages是A提供的,比JMX更高级一些的诊断和监控,见《ActiveMQ in Action》一书,第14.1.2节:
for more complex events such as sendingmessages to a
destination without a consumer, advisorymessages must be explicitly enabled.如检测没有消费者订阅的topic,这部分需要自己定义监听器。
留待验证。
PerformanceH使用第三方机构提供的测试,测试用例为复杂用例是一个超市公司的用例。见http://www.spec.org/jms2007/results/res2010q1/jms2007-20100119-00015.html
看样子H是最高的,需要测试。
HA除了O没有(土),其他都有,一般都是共享磁盘和数据备份(只备份持久化的消息)。需要测试这个的功能。
其他记录http://wikis.sun.com/display/GlassFish/OpenMQGlassfishQuestions如何打印ra的日志
http://www.infoq.com/cn/articles/AMQP-RabbitMQAMQP和RabbitMQ入门
http://community.jboss.org/wiki/HornetQOnJetty集成HornetQ到Jetty
更多关于集成HornetQ:
http://hornetq.sourceforge.net/docs/hornetq-2.0.0.BETA5/user-manual/en/html/appserver-integration.html
http://hornetq.sourceforge.net/docs/hornetq-2.0.0.BETA5/user-manual/en/html/embedding-hornetq.html
http://www.iteye.com/news/10147-maven-hornetq-jboss
http://fendou.org/2010/05/20/amqp-instruction/AMQP协议介绍
?
http://java.dzone.com/news/jms-over-http-using-openmq-sun有RESTful字眼
http://en.wikipedia.org/wiki/Advanced_Message_Queuing_ProtocolAMQP
?