在soloaris環境下
在使用過程中后臺報了很多如下的錯誤,目前還不能確定該錯誤和應用程序的操作有什么關系,并且在
該錯誤的前后一般都沒有報其他系統異常。
2007-9-6 0:14:30 org.apache.tomcat.util.net.TcpWorkerThread runIt
嚴重: Remote Host /172.16.16.94 SocketException: 無效的自變量
2007-9-6 0:14:30 org.apache.tomcat.util.net.TcpWorkerThread runIt
嚴重: Remote Host /172.16.16.94 SocketException: 無效的自變量
目前從網上找到一種說法是給soloaris打補丁,因為2.61的soloaris是最新的,所以還沒有試用該方法。
不知道大家有什么碰到過?給些意見和經驗
找到下面這篇文章,基本可以確定這個錯應該忽略,實際使用過程中也沒有因為這個日志錯而導致什么問題出現。
Tomcat的SEVERE: Remote Host / SocketException: Connection reset原因分析及解決辦法
引用:
昨天在測試幫助文件時發現一直打不開,好像是一直再刷新,于是就到服務器上查看Tomcat的日志,就發現了下面的信息:
Apr 21, 2008 9:27:34 AM org.apache.tomcat.util.net.TcpWorkerThread runIt
SEVERE: Remote Host /172.16.128.248 SocketException: Connection reset
并且這兩條信息幾乎是每個1-2秒就出現一次,很是頻繁。于是就搜索了一下,就找到了下面的內容:
The usual cause is that the browser''s stopped a HTTP request part-way through,
generally because the user''s navigated to another page before the first page has
completely downloaded. The browser closes the connection, with the result that
Tomcat gets an exception when it next tries to write data to the socket.
Arguably it shouldn''t be logged as a SEVERE error on production systems, but
getting that log message during development and stress testing can be very
handy! 于是就查看它引用的JavaScript文件,發現好多不存在。終于明白,是因為有些變量不存在,導致了這里的反復重載。重新加入這些JavaScript文件后,問題解決。
Fix it by any of the following (in increasing order of difficulty):
1) Ignore it (and change any log-reading scripts that look for SEVERE errors to
ignore this one);
2) Grab the source for 5.0.28, find the line where this is logged and change the
logging level in the case of a connection reset error, then recompile Tomcat;
3) Educate your users that they are supposed to sit on their hands until the
page has completely loaded (by far the hardest ;-) ).
后面還有別人的補充:
If it happens that often and you don''t have a high traffic site, it might be a monitor script, that does only check if it can do a TCP connect and drop the connection before a full HTTP request-response cycle has finished.
不過我的情況和上面所說的都不符合,于是就查看了源文件,發現了如下代碼:
if (!window.gbWhVer||!window.gbWhUtil||!window.gbWhMsg)
document.location.reload();
posted on 2008-09-12 14:11
歲月如歌 閱讀(499)
評論(2) 編輯 收藏 所屬分類:
java