我们一直在使用Apache camel和JMS来路由和处理消息。我们现在正在考虑从JMS切换到使用Pulsar。我一直在尝试camel-pulsar组件,但找不到任何关于如何使用该组件的文档。使用JMS,可以在路由上创建事务。使用pulsar有一点可能,如果处理失败,消息会返回给pulsar?另外,除了gitlab中的代码外,还有关于camel-pulsar组件的文档吗?
多谢
布鲁斯
找不到要使用的方法。
我们一直在使用Apache camel和JMS来路由和处理消息。我们现在正在考虑从JMS切换到使用Pulsar。我一直在尝试camel-pulsar组件,但找不到任何关于如何使用该组件的文档。使用JMS,可以在路由上创建事务。使用pulsar有一点可能,如果处理失败,消息会返回给pulsar?另外,除了gitlab中的代码外,还有关于camel-pulsar组件的文档吗?
多谢
布鲁斯
找不到要使用的方法。
1条答案
按热度按时间vngu2lb81#
事务只适用于支持JTA/XA的资源,这些资源通常是JMS和JDBC等旧技术。
Kafka / Pulsar不支持这个,并且有自己的 * 伪 * 事务。
有了Kafka transaction,你就可以让所有的kafka交互都在同一个transaction中,但当你混入其他资源(如JMS或JDBC数据库)时就不行了。
我假设它是相同的Apache脉冲星(但我不知道100%)。
camel-pulsar consumer会在路由完成后确认消息。你可以关闭它,使用手动确认,然后你需要自己从java代码中调用acknowledge。