我希望我的系统能够保证即使系统正在关闭也不会丢失数据。 这意味着系统不能错过请求消息。所以,我会改变接受http reqeust的方式。现在,我在spring集成中使用http gateway / webservice网关。但是,即使系统死亡,也不会收到消息。所以,我想在http客户端和http接收器之间添加队列。所以,我想使用队列通道。这是问题所在。
①我必须安装其他队列程序,如activemq或rabbitmq,并且必须在spring集成中连接到队列通道?
②哪一个是弹簧整合的最佳组合?我听说兔子mq是最好的。
请给我一个详细的解释。感谢。
答案 0 :(得分:3)
首先,你的描述并不清楚......
如果您不想丢失来自QueueChannel
的消息,请使用某些持久性MessageStore
,例如JdbcChannelMessageStore
:
http://docs.spring.io/spring-integration/docs/latest-ga/reference/html/system-management-chapter.html#message-store
从另一方面来看,AMQP和JMS都有channel wrappers
:
http://docs.spring.io/spring-integration/docs/latest-ga/reference/html/amqp.html#d4e5846
http://docs.spring.io/spring-integration/docs/latest-ga/reference/html/jms.html#jms-channel
这确实为您的用例提供了相同的持久性持久性,容错选项。
重新。 activemq
VS rabbitmq
。我可以说,通过我自己的expiriance,最后一个更好,通过配置,使用Spring Integration(Spring AMQP在shell下)。它的表现确实更好。
您可以在互联网上找到所有其他信息。