JBoss AS 7和http线程 - 是否只有一个线程处理客户端的请求?

时间:2013-06-19 18:35:17

标签: java jboss7.x threadpool

我有一个java servlet,我打印出当前线程的名称。无论我在浏览器上按下刷新按钮多少次,它始终是处理我的请求的相同线程。线程总是http--127.0.0.1-8080-1这是否意味着池中只有一个线程处理所有请求?

当我参加Java EE课程时,我记得的是,当我多次按下刷新按钮时,池中有不同的线程处理请求。输出可能是:

http--127.0.0.1-8080-1
http--127.0.0.1-8080-3
http--127.0.0.1-8080-2
http--127.0.0.1-8080-5

现在始终是http--127.0.0.1-8080-1

1 个答案:

答案 0 :(得分:2)

我已经检查过JBoss 4.2.3,JBoss 6.0.0和JBoss 7.1.1:有时线程会改变,有时候不会。

当我从不同的浏览器实例访问同一个Web应用程序时,在第一个浏览器中它没有改变,而在另一个浏览器实例中它确实发生了变化。

在位于Resources / JBoss Web / Connectors / http://127.0.0:8080的JBoss 6.0.0管理控制台中,您可以看到活动线程数和总线程数。在我的例子中,active = 2和count = 7.我还没有在JBoss 7.1.1管理控制台中找到这个信息。但是使用两个浏览器实例表明至少使用了两个不同的线程。

因此,从池中选择哪个线程可能不确定,并且一个或两个浏览器会话无法创建足够的流量。