2015-02-08 303 views
0

我正在使用基於SOAP over HTTP的Web服務,它基於Tomcat 7上的一個Servlet/JSP基礎Web應用程序。
我使用Codehaus XFire eclispe插件生成客戶端來自WSDL的存根,併爲我插入依賴庫。代碼的格式爲Service name = Class nameService Action = Class MethodWeb服務響應處理花費太多時間

所以我實例化這個類並調用適當的方法來使用這個服務。它工作正常。

現在我的問題是在負載測試期間,其中一項服務花費了太多時間。我從日誌和wireShark證實,服務工作正常,並返回響應幾百毫秒。
我的發現是,在我的代碼接收響應對象之前,處理Web服務響應時出現高延遲。

每次請求的平均時間高達40秒。我正在測試的負載是50個用戶和50次迭代,5秒鐘的加速時間。

我是唯一一個體驗這個嗎? 有沒有什麼辦法在xfire中配置任何屬性來提高性能? 做任何一件事發生了什麼?

我的項目是在

  • 的Servlet/JSP
  • 的Tomcat 7
  • 的Java Runtime 1.6
  • Xfire的1.2.5和2.0.1 JAXB

在此先感謝

請詢問更多的信息是否neede d。

+0

XFire是一種古老的技術。如果您使用其後繼者之一(如Apache CXF),則可以獲得更多幫助。 – bmargulies 2015-02-08 19:10:16

+0

謝謝,但任何人都可以幫助我解決這個問題。我繼承了這個項目進行優化。我被困在這裏。 – 2015-02-08 19:12:28

+0

您是否可以控制該項目,即是否可以更改響應結構?很高興看到響應中生成的XML。你看過回覆的大小嗎? – Namphibian 2015-02-08 22:53:05

回答

0

由於沒有更多的選擇,我們希望使用HTTPURLConnection手動調用Soap服務,並捕獲JAXB上下文,以增加性能,但是我們一次又一次地結束了發明輪。

它看起來有代碼的XFire有一些問題。我們需要計劃將我們的應用程序遷移到未來更好的服務客戶端。

相關問題