【问题标题】:Jms message listeners implement RunnableJms 消息监听器实现 Runnable
【发布时间】:2011-05-29 20:18:58
【问题描述】:

对于异步 JMS 消费者,设计消费者的标准方式是: 1.创建MessageConsumer
2.创建一个MessageListener并实现onMessage()
3.向消费者注册监听器

现在,在网上的一些示例中,MessageListener 类被实现为 Runnable。这是一个好习惯吗?我正在考虑两种情况:
1. 独立的MessageConsumer
2.MessageConsumer 在J2EE 服务器内部运行。

非常感谢任何帮助。

【问题讨论】:

    标签: jms


    【解决方案1】:

    如果您在 Java EE 环境中,使用 Runnable 还不错 - 但管理您自己的线程通常是这样。在那里,您最好使用 MDB 并允许容器处理并发消息。

    在 Java EE 之外,让侦听器实现 Runnable 并不是一个糟糕的想法 - 这通常不是很有必要,因为在大多数情况下注册会处理线程。除非您发现实际问题,否则我会说不要担心。

    【讨论】:

    • 谢谢。您能否详细说明注册将如何处理线程?
    • 当然。当您使用通知(如 MessageListener)时发生的情况是容器负责通知 - 如果它不糟糕,它会在自己的线程中调用 onMessage(),而不是您。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-16
    • 2012-01-03
    • 2015-05-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多