一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

Linux|Centos|Ubuntu|系統進程|Fedora|注冊表|Bios|Solaris|Windows7|Windows10|Windows11|windows server|

服務器之家 - 服務器系統 - Linux - Tomcat中應用調用Libvirt庫進行控制時可能導致線程卡死問題的解決方法

Tomcat中應用調用Libvirt庫進行控制時可能導致線程卡死問題的解決方法

2019-12-09 17:21服務器之家 Linux

啟動一個線程由于實時的檢測主機的斷開連接狀態,當狀態不正常的時候,在獲取connection的方法中直接拋出異常,阻止后續的邏輯的執行。但是這樣只能解決狀態問題,不能解決在這個狀態獲取的間隙中的界面點擊問題,查找到資

最近的項目中有用到libvirt的java包進行libvirt的遠程命令調用,進行kvm的管理。我們的測試人員一個偶然的機會下測試出來,在控制連接狀態的時候,可能存在一個嚴重的bug,由于界面上的flex應用在每次點擊虛擬機節點的時候,會導致對后臺的remote service進行大約3-4次的調用,而這些remote service中會利用libvirt的結構進行結果的獲取,我們為了提高效率,將libvirt的鏈接進行了保持,而不是每次都進行重連,以減少性能的損耗。

存在這樣的情況,當網絡正常的時候,建立起來的connection,一直在內存中駐留,此時如果拔掉網線,這個鏈接也不會斷開,由于內存中這個connection的值也不為空,無法判斷鏈接是否斷開,所以在此點擊界面的時候,一點調用了libvirt的接口,就會一直卡住界面多點擊幾次后,tomcat的所有可服務線程就都卡住了,導致整個界面無法使用。

解決方法為:啟動一個線程由于實時的檢測主機的斷開連接狀態,當狀態不正常的時候,在獲取connection的方法中直接拋出異常,阻止后續的邏輯的執行。但是這樣只能解決狀態問題,不能解決在這個狀態獲取的間隙中的界面點擊問題,查找到資料發現tomcat的線程池模型也許可以幫忙,于是將線程池用上了,測試過后,終于發現可以了。

據說tomcat7可以檢測哪個線程被卡死了,但是由于條件顯示沒有將產品中的tomcat6環境升級為tomcat7,所以這個也就不可用了。

具體修改方法:

 

復制代碼

代碼如下:


<Executor name="tomcatThreadPool" namePrefix="catalina-exec-" maxThreads="150" minSpareThreads="4"/&gt
取消掉這段的注釋,然后可以修改maxThreads和minSpareThreads兩個參數為你想要的值,maxThreads比較簡單允許的最多線程數
通常150應該足夠了,后面的這個參數呢,表示最小的駐留服務線程數,也就是說這些線程會一直等待服務。</p> <p><Connector executor="tomcatThreadPool" port="8080" protocol="HTTP/1.1" 
connectionTimeout="20000" maxTreads="500" minSpareThreads="30" maxSpareThreads="50"
URIEncoding="UTF-8" keepAliveTimeout="15000"
redirectPort="8443" /></p> <p>修改Connector節點,增加executor="tomcatThreadPool",maxThreads,minSpareThreads,maxSpareThreads,keepAliveTimeout等參數的配置
這樣就基本上解決了問題,參數具體含義呢,其中兩個和上面提到的意義是一樣的,executor表示對上面的那個Executor節點的引用,所有這個配置的線程都會在那個池中。
keepAliveTimeout表示每個線程能被卡住的最長時間,也就是能存活的最長時間。

 

有了上述修改后,我們的tomcat就再也不會被libvirt線程卡住了,一旦卡住,也只是15秒的一個線程,除非能同時請求操過500個線程,否則tomcat都能正常的提供服務了,只是上述參數沒經過調優,性能各方面都沒有測試,只是臨時解決,具體數值的大小,還是需要按照實際情況,經過多組數據的測試對比后然后確定一個值。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 亚洲qvod图片区电影 | 青草国产在线观看 | 桃色视频软件 | 色综合色狠狠天天综合色 | 亚洲国产美女精品久久久久 | 欧美黄站| 国产色图片 | 国产精品思瑞在线观看 | 亚洲视频在线观看免费视频 | 娇女的呻吟亲女禁忌h16 | 嫩草影院永久在线一二三四 | 亚洲色图中文字幕 | 色人阁小说 | 亚洲品质水蜜桃 | 调教校花浣肠开菊 | 亚洲爱视频 | 全彩孕交漫画福利啪啪吧 | 日韩免费在线视频观看 | 日韩国产欧美成人一区二区影院 | 99精品网站 | 北海市副市长黄江老公 | 公交车强校花系列小说 | 视频在线观看高清免费看 | 香蕉精品视频 | 精品久久洲久久久久护士免费 | 视频免费 | 四虎永久成人免费 | caonila国产在线观看 | 国产精品一区二区久久不卡 | 69热精品视频在线看影院 | 日本xxx18hd| 亚洲天堂影院在线观看 | 3d动漫美女被吸乳羞羞视频 | 第一次处破女18分钟 | 欧美大片一区 | 国产午夜精品理论片 | 禁止的爱善良的未删减版hd | 日本高清免费观看 | 波多野结衣黑人系列在线观看 | 国产大秀视频一区二区三区 | 国产欧美日韩不卡一区二区三区 |