一臺機器JBoss去掉APR後,發現APACHE+JBOSS之間的連接始終保持,一時間300多個AJP連接 一直保持,奇怪就是AJP超時時間偶設置爲了15s, 然後 apache進程一會就達到了最大數,apache開始主動斷開ajp連接,jboss這端出現大量的CLOSE_WAIT連接,服務器開始停止工作。這是個shit的事情,經過苦苦奮戰3天,分析原因,看源代碼,最後和另外兩個同事一起分析,查找,終於被我們發現,這是jboss的一個AJP實現的bug,真是版本年久失修啊.
https://issues.jboss.org/browse/JBPAPP-366?page=com.atlassian.jira.plugin.system.issuetabpanels%3Aall-tabpanel#issue-tabs
第一個紅色方框中的是存在問題的,不論是否有超時都會返回true.連接始終不會關閉。第二個框中的修復了這個bug: