有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!


共 (1) 个答案

  1. # 1 楼答案

    消息bean保证了消息的传递,一旦消息在队列上(假设队列是持久的),它就会被持久化,即使在崩溃的情况下,启动时MessageBean也会处理它。在异步会话bean的情况下,在崩溃的情况下,您丢失了消息,除非您自己处理

    在本教程中,我不同意:

    Session beans allow you to send JMS messages and to receive them synchronously, but not asynchronously.
    

    将消息放在队列上是一个同步操作(在这方面,任何方法调用都是如此),语义实际上是异步的,因为您将消息放在队列上,然后忘记了它。我猜他们的意思是,您可以从会话bean发送消息,然后同步等待响应(在大多数情况下可能不是一个好主意)

    为了回答您关于何时使用消息bean的问题,您可以使用消息bean在队列上侦听异步消息,然后调用需要调用的任何逻辑以及消息中的信息