Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/385.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 有没有一种方法可以不使用消息传递协议从web应用程序发送多个请求?_Java_Multithreading_Web Applications_Architecture_Mq - Fatal编程技术网

Java 有没有一种方法可以不使用消息传递协议从web应用程序发送多个请求?

Java 有没有一种方法可以不使用消息传递协议从web应用程序发送多个请求?,java,multithreading,web-applications,architecture,mq,Java,Multithreading,Web Applications,Architecture,Mq,我们在应用中遇到以下情况 用户导航到一个页面,该页面显示50个帐户的列表以及其他详细信息。 为了使附加信息在线服务器发送消息(每个帐户一个)到MQ队列,有一个批处理作业,它侦听此队列并拾取这些消息,通过WS或EJB调用调用外部系统,并以响应形式返回队列上的数据,在线服务器从队列中拾取数据并将其显示在屏幕上 在线服务器向MQ发送多条消息 批处理作业侦听此队列 拾取消息,并相应地调用外部系统 创建响应并将其放回队列 联机服务器将拾取这些消息并在其上显示这些消息 屏幕 在这种情况下,有很多冗余步骤和太

我们在应用中遇到以下情况

用户导航到一个页面,该页面显示50个帐户的列表以及其他详细信息。 为了使附加信息在线服务器发送消息(每个帐户一个)到MQ队列,有一个批处理作业,它侦听此队列并拾取这些消息,通过WS或EJB调用调用外部系统,并以响应形式返回队列上的数据,在线服务器从队列中拾取数据并将其显示在屏幕上

  • 在线服务器向MQ发送多条消息
  • 批处理作业侦听此队列
  • 拾取消息,并相应地调用外部系统
  • 创建响应并将其放回队列
  • 联机服务器将拾取这些消息并在其上显示这些消息 屏幕
  • 在这种情况下,有很多冗余步骤和太多的故障点。不过,据我所知,这是为了实现绩效效率

    我想实现这样的目标:

    1) Online直接调用外部系统并获取响应

    • 我可以做到:在每个帐户的循环中,这将花费我 表演命中
    • 我可以打开多个线程,并发出请求,但是 被告知从一个web应用程序打开多个线程是不允许的[有人可以吗 解释原因?]
    有什么方法/机制可以实现这一点吗

    感谢您抽出时间阅读如此冗长的文章。

    关于多线程:

    对于EJB来说,这不仅是不鼓励的,而且是被
    但是,对于J2EE的其他领域,最好使用并发UTIL,确保新线程由容器创建和管理,确保所有EE服务都可用

    您还可以使用WorkManager在EJB中创建新线程。请参阅(它是为WebLogic Server编写的,但可用于包含CommonJ的每个应用程序服务器)