我正在使用BPEL流程(AIA)从MQ(Message Queue)中选择消息。 MQ Adapter根据定义的模式(nxsd)从队列中选择消息。 nxsd架构的样式已终止。问题是当一个不正确的消息被放入队列时,进程不断从队列中选择消息拒绝它并将其放回队列。这种情况不断发生
请帮助,因为这会导致很多服务器问题
答案 0 :(得分:0)
我不是MQ BPEL适配器。我来自MQ背景。
MQ Adapter可能能够将其不理解的消息路由到称为BACKOUT QUEUE(或WebSphere MQ中的BOQNAME)的另一个队列。适配器(或JMS层)无法理解的消息称为poison messages
。
还会有另一个参数通常称为“阈值”(WebSphere MQ中的BOTHRESH
)。此属性告诉适配器何时将消息路由到回退队列。例如,如果属性设置为3,那么如果接收到相同的消息3次(并且因为适配器不理解此消息而被发送回同一队列),那么当消息第四次到达时,消息自动移动到退出队列。
我的建议是查看MQ BPEL适配器文档,看它是否支持Backout队列和阈值属性。如果是,请适当设置这些属性并尝试。