我使用wso2 ESB与ActiveMQ消息代理集成。今天我正在测试我的应用程序,发现预定转发消息处理器的转发率非常慢。我试图改变wso2 esb的转发速率,使其低于1000毫秒,但没有发生任何事情,消耗延迟甚至比以前更糟。我决定看看预定的转发消息处理器源代码here,我看到了这一评论:
//如果此间隔值小于1000毫秒,则ntask将抛出异常....
然后我编写了一个实现MessageListener接口的类,并创建了一个与activemq队列之一的连接,然后我重写了onMessage方法,该方法将在新消息发布到队列时调用。然后我运行我的应用程序,发现消耗延迟比使用ESB的预定转发消息存储要少得多。所以我的问题是哪种方法更好?编写一个消耗消息的自定义java类真的更好吗?为什么转发速率限制在1000毫秒?