我们是后端处理器并使用JMS MQ进行编程.我们有2个队列.一个用于获取消息,另一个用于发送消息.所有银行用户都会通过他们的IB,MB等将消息发送到Q1.我们从Q1接收消息并处理它,然后我们向Q2发送消息.
目前我们不使用多线程.我们能否为此使用多线程或单线程就足够了.因为我们逐个从Q1获取消息并处理它.
如果问题不可理解,请回复我.请有人帮助我.
是的,JMS允许同一队列中的多个读取器.您可以通过多线程,多个应用程序实例或提取消息然后通过回调或其他机制将其传递给处理程序的调度层来执行此操作.
但是,应用程序必须支持该功能.例如,如果两个消息相关且必须按顺序处理,则如果队列中有多个侦听器,则不会保留顺序.这就是为什么异步消息传递模式强烈希望消息不具有顺序依赖性或亲和性的原因之一.
如果使用多线程,请务必保留事务性.如果多个线程使用相同的连接,并且一个发出a,COMMIT
则会在共享该连接的所有线程中提交所有未完成的消息.