jakarta-ee - Wildfly 10.1.0.Final ManagedExecutorService 导致活动线程数增加
问题描述
Wildfly 10.1.0.Final ManagedExecutorService 导致活动线程数增加
我在 Wildfly 15 上尝试过相同的配置
我每 10 分钟执行一次 Timer 课程。我在这个计时器中调用了一个无状态会话 bean 的方法。
@Resource
private TimerService timerService;
@Timeout
public void timeOut() {
executorBean.executeParallels();
}
在 ExecutorBean 中,我使用 ManagedExecutorService 并调用 10000 次来执行 doSomething。
@Stateless (name="ExecutorBean")
ExecutorBean implements ExecutorLocal {
@Resource
private ManagedExecutorService executorService;
public void executeParallels() {
for (int i = 0; i < 10000; i++) {
Future<Void> result = executorService.submit(new Callable<String>() {
@Override
public String call() throws Exception {
doSomething();
return "executed";
}
});
}
}
}
这是我的standalone.conf 文件:
<managed-executor-services>
<managed-executor-service name="default"
jndi-name="java:jboss/ee/concurrency/executor/default"
context-service="default" hung-task-threshold="60000"
core-threads="50" max-threads="50" keepalive-time="5000"/>
</managed-executor-services>
我可以部署和运行代码,但是当我检查 Wildfly 管理控制台(独立服务器 -> JVM)时,我可以看到实时线程的数量随着时间的推移不断增加。
随着时间的推移,线程数应该相同。
解决方案
推荐阅读
- android - 如何在android中减小签名应用程序的大小
- php - Laravel flash 消息在特定重定向路由的特定方法中不起作用
- angular - Angular 6嵌套反应表单组件
- android - REST API请求android不起作用
- windows - 无法安装 Oculus - 磁盘空间不足
- python - google api (sheets) 请求的身份验证范围不足
- mysql - 如何在不更新 MySQL 中的整个值的情况下更新特定值
- python - Python openpyxl如何绕过写入打开文件的权限
- php - 正则表达式匹配字符串,直到第一次出现小数点后跟一个制表符
- node.js - 猫鼬中的createIndex