我有一个应用程序,其中我的前端是用Angular编写的,后端是用Java编写的,并且在WildFly上部署了spring。前端正在通信后端REST服务。有一项特定的服务(例如 service-X )具有一个HIVE查询,执行该查询大约需要120秒。我已经登录了一些应用程序。 现在出现了奇怪的部分: 调用此REST时,会发生以下情况:
t + 90 之后,发生超时,并且 ajpworker任务1 的连接断开。其他工人也是如此。这部分是可以理解的,因为请求正在从Angular超时,因此连接中断。
但是无法理解为什么30秒后会产生多个工作任务。这是否与WildFly中存在的配置文件(类似于worker.properties)有关。
答案 0 :(得分:0)
最后找到了造成这种情况的根本原因。 由于在我的Wildfly配置文件中将JBOSS_SocketTimeout参数设置为30秒,因此产生了多个ajp线程。将其更改为180秒(REST可以响应的最长时间),并且效果很好。