Search code examples
javaweb-servicesjaxbtomcat7xfire

Web service Response processing taking too much time


I am consumeing a web service which is based on soap over HTTP on one of my Servlet/JSP base web Application on Tomcat 7.
I am using Codehaus XFire eclispe plugin which generate client stub from WSDL and insert depending libraries for me. Code are in the form Service name = Class name and Service Action = Class Method.

So I instantiate this class and call the appropriate method to consume this service. It is working fine.

Now my problem is during load testing one of the service is taking too much time. I confirmed from logs and wireShark that the services are working fine and returning response withing few hundred millisecond.
My findings are that the high latency is while processing the web service response before my code receive the response object.

Time taken is as much as 40 seconds average per request. and the load I am testing is 50 users and 50 iteration with 5 second of ramp-up time.

Am I the only one experience this? Is there any way of configuring any properties in xfire to increase performance? Do any one what is happening?

My project is on

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

Thanks in advance

Please ask if any more information is needed.


Solution

  • Due to no more alternative we desided to Call Soap service manually using HTTPURLConnection and catching JAXB context considerabely increased the perfomance but yes we ended up invention wheel again and again.

    It look line there some problem with codehous XFire. We need to plan for migration our application to some better Service client in the future.