2013-06-19 45 views
0

我有一個java servlet,我打印出當前線程的名稱。無論我在瀏覽器上按多少次刷新按鈕,處理我的請求始終是相同的線程。線程始終是http--127.0.0.1-8080-1這是否意味着池中只有一個處理所有請求的線程?JBoss AS 7和http線程 - 是否只有一個線程處理客戶端的請求?

當我在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

回答

2

我檢查過JBoss 4.2.3,JBoss 6.0.0和JBoss 7.1.1:有時線程會改變,有時候不會。

當我從不同的瀏覽器實例訪問同一個網絡應用程序時,在第一個瀏覽器中它沒有改變,而在另一個瀏覽器實例中它改變了。

在位於資源/ JBoss Web /連接器/ http://127.0.0:8080中的JBoss 6.0.0管理控制檯中,您可以看到活動線程數和總線程數。在我的例子中,active = 2和count = 7。我還沒有在JBoss 7.1.1管理控制檯中找到這些信息。但是使用兩個瀏覽器實例表明至少使用了兩個不同的線程。

因此,從池中選擇哪個線程可能不確定,並且一個或兩個瀏覽器會話不會創建足夠的流量。

+0

謝謝!我試圖從另一個瀏覽器訪問Web應用程序,然後使用另一個線程。我已將standalone.xml中的max-connections屬性設置爲100,因此如果100個客戶端同時調用Web應用程序,則可以創建100個不同的線程。我會用VisualVM進一步檢查。 – Rox

相關問題