Spring JmsTemplate用于不同QoS的单实例

时间:2017-05-25 07:26:58

标签: java spring jmstemplate

我知道JmsTemplate可以在多个线程之间共享,并且可以同时用于发送消息。

但是,如果我想共享一个实例,但发送具有不同QoS参数的消息 - 比如不同的优先级,该怎么办。

据我所知,在源代码中,如果启用了QoS,JmsTemplate会使用带有QoS的Producer.send()的重载版本,并且没有其他方法可以从外部传递这些参数(除了将它们直接设置为JmsTemplate实例)

出于已知原因,在发送邮件之前将QoS设置为单个共享JmsTemplate实例不是一种选择。

所以问题是:

  • 是否有一个很好的解决方案可以保留一个JmsTemplate实例并使用事先未知的QoS发送消息(例如从外部传递)?

  • 如果没有,怎么"脏"是在每个发送调用上创建一个新实例吗?

0 个答案:

没有答案