簡體   English   中英

GRIZZLY0023 Glassfish警告

[英]GRIZZLY0023 Glassfish warning

我在GlassFish服務器上的java中部署了2個Web應用程序。 我正在使用Glassfish Server 3.1.2.2。 它們都有來自接收http請求的java servlet頁面,代碼也是相同的,只有不同的參數(針對不同的客戶端)。 第一個工作正常,另一個處理http請求很長。 之后我注意到了下一件事:

我經常在Netbeans的Glassfish輸出中收到此警告。

WARNING: GRIZZLY0023: Interrupting idle Thread: http-thread-pool-9990

任何人都可以解釋我為什么會得到這個警告,以及如何解決它。

如果HTTP請求超時,則會出現此警告。 Glassfish默認超時為15分鍾

這可能發生在不同的情況下,例如,當請求調用長時間運行的操作時,如果通過HTTPS向服務器發出請求並且僅支持HTTP(反之亦然),則在超時期限內不返回任何響應或者如果HTTP連接池中沒有可用的連接。

您的情況下的具體原因只能被猜到,但通常一個解決此問題的方法是增加默認的HTTP請求超時。 您可以在Glassfish Admin GUI( http://localhost:4848 )中設置此值:

server-config - > Network Config - > Network Listeners - > <your listener>

默認情況下, Request Timeout字段設置為900 (15分鍾),只需增加此值即可。 不幸的是,你不能將它設置為-1 ,因為Glassfish 3.1.2沒有限制。

您也可以使用asadmin工具進行設置,如下所示:

asadmin set configs.config.server-config.network-config.protocols.protocol.http-listener-1.http.request-timeout-seconds=x

服務器空閑時會發生這種情況。 當服務器空閑一段時間后,它就開始生成

GRIZZLY0023:中斷空閑線程:

日志文件中的警告,我們必須重新啟動服務器。 我們在Glassfish 3.1.2.2 build 5中觀察到了這一點。我們從未在舊的Glassfish中觀察到這一點。

這表明GF 3.1.2.2版本中存在一些錯誤。

我不認為我會建議完全禁用線程的中斷。 實際上,這個錯誤可能是由於Glassfish 3.1.2.2中的一個錯誤導致線程沒有正確中斷。 這可以通過相同thread-id的多個中斷日志來看出。 通過在Glassfish的類路徑上放置修補版本的grizzly-http.jar來修復該錯誤。

有關更多信息,請參閱https://www3.wipo.int/confluence/display/wipoimd/3.3.2.1.-+GlassFish+3.1.2.2+%28build+5%29+patches

您需要在Glassfish管理員中增加或禁用請求超時

server-config -> Network Config -> Network Listeners -> <LISTENER> -> HTTP

值為-1將禁用它。

測試:GlassFish Server開源版3.1.2.2

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM