我正在使用activeMQ 5.10并尝试根据instructions here测试代理重新传递插件。我已在配置文件中设置了该部分,但现在我的问题很简单:我如何实际执行故意“中断”消息的测试,导致代理重新发送它?我有一个PHP消费者(Stomp)阻塞,直到消息到达,并故意不确认代理,但我不认为这足以表明消息处理“失败”。 为了真正看到插件的运行,我需要做些什么?
答案 0 :(得分:1)
你只需要模拟一条破碎的消息。只是强制错误或玩超时(例如设置超时时间为1秒并强制消费者花3秒钟来处理消息 - 睡眠3秒钟。这些只是建议)。 然后在测试脚本中添加最多重试次数,例如3,从那里你应该查看接收器接收和丢弃的消息3次但是代理只发送一次。 希望这会有所帮助....我认为你已经解决了最困难的部分
答案 1 :(得分:0)
对于NACK(Stomp 1.2),Stomp SEND帧必须设置持久性标志,否则它将不会出现在ActiveMQ.DLQ中
所以我建议使用persistent:true Stomp标头发送消息,并检查这是否有帮助。