我正在研究使用传输层和点对点 MQ 通信的现有应用程序。
对于每个给定的帐户列表,我们需要检索一些信息。
目前我们有这样的东西来与 MQ 通信:
responseObject getInfo(requestObject){
code to send message to MQ
code to retrieve message from MQ
}
如您所见,我们等到它完全完成后再继续下一个帐户。由于性能问题,我们需要对其进行返工。
目前我可以考虑两种可能的情况。
1) 在应用程序中创建一组线程,这些线程将为每个帐户执行传输适配器。然后从每个任务中获取数据。我更喜欢这种方法,但一些团队成员认为传输层是进行这种更改的更好地方,我们应该在 MQ 而不是我们的应用程序上增加额外的负载。
2) 返工传输层以使用发布/订阅模型。理想情况下,我想要这样的东西:
void send (requestObject){
code to send message to MQ
}
responseObject receive()
{
code to retrieve message from MQ
}
然后我将在循环中发送请求,然后在循环中检索数据。这个想法是,当后端系统正在处理第一个请求时,我们不必等待响应,而是发送下一个请求。
我的问题是,它会比当前的顺序检索快很多吗?