我非常喜歡Tomcat新手,所以我猜測這個答案非常簡單,但Google今天對我不友好。爲多個同時發出的SOAP請求配置Tomcat
我在Apache Tomcat上安裝了Java Web應用程序。雖然應用程序有一個首頁(用於診斷目的),但應用程序實際上都是關於SOAP接口的。沒有客戶永遠不需要查找服務器的網頁。客戶端向服務器發送SOAP請求,服務器解析請求,然後在數據庫中查找結果。然後結果再通過SOAP傳遞迴客戶端。
在其默認配置中,Tomcat似乎對請求進行排隊。我的實驗包括將客戶端安裝在兩臺指向同一臺服務器的獨立機器上,並在同一時間運行搜索(其中一臺機器在另一臺機器後0.11秒,但您可以看到圖片)。
如何配置併發請求線程的數量? 我的理想配置是有X個請求線程,每個線程在Y分鐘或Z請求之後(以較早者爲準)循環自己(即調用析構函數和構造函數並循環其內存分配)。我被告知可以配置IIS來做到這一點(儘管我也沒有使用IIS的經驗),但是你如何使用Tomcat來做到這一點?
我希望能夠回收線程,因爲Tomcat在請求進入時並不會釋放內存,這意味着當我們正在接近時偶爾出現(但不一致)Java堆空間錯誤內存限制(我已經在2GB服務器上配置爲1GB)。我不是100%確定這是由於我的應用程序中是否存在內存泄漏,或者僅僅是因爲我使用的工具使用了大量內存。
任何意見將不勝感激。
感謝, 裏克
太奇怪了...... SOAP請求最後是HTTP請求,Tomcat(任何Web容器)都能夠支持併發請求(無需排隊)。什麼是您的SOAP引擎(Axis,JAX-WS)? – 2012-02-27 16:44:31
我相信JAX-WS。總是有可能我錯了,而不是排隊,但即使是這樣,我仍然希望能夠配置它/可以看到配置是什麼。 – RikSaunderson 2012-02-27 16:56:20
默認情況下,Tomcat併發請求(如果沒有它,這將會是無用的!)。請發佈您正在使用的WS框架來實現您的服務。 – Perception 2012-02-27 16:57:57