rjb*_*jbs 10 perl activemq-classic stomp
我正在尝试用ActiveMQ替换一些定制的消息队列,我需要与Perl(很多)交谈.ActiveMQ提供了一个Stomp接口,而Perl有Net :: Stomp,所以这看起来应该没问题,但事实并非如此.
即使我通过Stomp发送BEGIN命令,也会立即发布使用SEND发送的消息,如果我中止该事务,则不会发生任何事情.
我找不到任何明确的答案,表明它是不可能的,这是可能的,或者说有相关的配置.此外,Stomp似乎不是一个很好的协议来检查服务器的错误响应.
我运气不好吗?
顺便说一句,询问 Perl/ActiveMQ/Stomp 问题的最佳场所是ActiveMQ 用户论坛,因为很多 Perl-Stomp 人员都在那里闲逛。
STOMP 交易的技巧是确保您发送的每条消息或您做出的每个确认都包含交易 ID 标头。请参阅STOMP 协议的事务处理部分。
原因是,使用 STOMP,如果您的客户端是多线程的,则可能会同时发生许多事务 - 以及一些非事务性操作。