我有一个应用程序,我在其中实施了 Oracle AQ。我注意到,在向 AQ 生成消息后,JMS Push 消费者对消息的消费有几秒钟的延迟。
我运行了这个场景,我在 AQ 中生成了几条消息,比如一小时内 10 条消息。我注意到消息的消费有几秒钟的延迟。我计算了这种情况下的平均延迟时间,结果为 12 秒,最大延迟时间为 13.5 秒。
但是当我将生产速度提高到一小时内 1000 条消息时。我看到消费延迟减少了。我得到了 5 秒的恒定平均值,最大延迟为 5.2 秒。
我可以假设 JMS 消费者线程可能有一些睡眠时间但我有点困惑,因为我使用的是 Push 消费者而不是 Poll 消费者。
请帮助我找出这种延迟的原因以及如何缩短这个时间间隔。
~谢谢