Spring集成:队列通道保证无数据丢失?

Spring集成:队列通道保证无数据丢失?,spring,spring-integration,Spring,Spring Integration,我希望我的系统保证即使系统关闭也不会丢失数据。 这意味着系统不能错过请求消息。因此,我将改变接受http请求的方式。现在,我正在spring集成中使用http网关/webservice网关。但是,即使系统死机,也无法接收消息。因此,我想在http客户机和http接收器之间添加队列。所以,我想使用队列通道。问题是 ① 我必须安装其他队列程序,如activemq或rabbitmq,并且必须在spring集成中连接到队列通道 ② 哪一个是与spring集成的最佳组合?我听说兔子mq是最好的 请给我一个

我希望我的系统保证即使系统关闭也不会丢失数据。 这意味着系统不能错过请求消息。因此,我将改变接受http请求的方式。现在,我正在spring集成中使用http网关/webservice网关。但是,即使系统死机,也无法接收消息。因此,我想在http客户机和http接收器之间添加队列。所以,我想使用队列通道。问题是

① 我必须安装其他队列程序,如activemq或rabbitmq,并且必须在spring集成中连接到队列通道

② 哪一个是与spring集成的最佳组合?我听说兔子mq是最好的


请给我一个详细的解释。谢谢。

首先你的描述不清楚

如果您不想丢失来自队列通道的消息,请使用一些持久性
MessageStore
,如
JdbcChannelMessageStore

另一方面,AMQP和JMS都有
通道包装器

它确实为您的用例提供了相同的持久性、耐用性和容错选项

Re
activemq
VS
rabbitmq
。根据我自己的经验,从配置和SpringIntegration的使用情况来看,最后一个更好(SpringAMQP在shell下)。而且它的性能确实更好

您可以在Internet上找到的所有其他信息