通过多个队列传播消息

Propagating message's through multiple queues

是否可以通过几个队列传播消息? f.e。我有两个数据库远程和本地,在远程我有一个 aq table AQ1,在本地我有两个 aq tables AQ2 和 AQ3。是否可以安排从 AQ1 传播到 AQ2,然后从 AQ2 传播到 AQ3,这样我在 AQ2 中从 AQ1 收到的消息会自动传播到 AQ3?

我问这个是因为我有这个问题,当消息从 AQ1 传播到 AQ2 时,它不会自动传播到 AQ3。当我查看 user_queue_schedules 时,甚至没有触发到 AQ3 的传播。但是,如果我将消息排队到 AQ2,它确实会传播到 AQ3。

当您考虑传播时,当您将消息传播到另一个队列时,它会将消息排入该队列,这应该会触发传播到第三个队列,这是合乎逻辑的。但是,当您更好地考虑传播的工作原理时,不应该触发传播到第三个队列是合乎逻辑的。如果您在消息的入队过程中未指定收件人,则传播采用订阅该 aq table 的默认代理并向它们发送消息,因此它将消息排入第二个队列,收件人是该队列,因此消息无法传播到第三个队列,因为该队列不是收件人。解决此问题的方法是添加回调过程,以便在消息排队到第二个队列时使该消息出队并将其排队到第三个队列。或者只是创建一个作业,每隔几秒 运行,使新消息出队并将它们排入第三个队列。

如果我对此有误,请告诉我。