This topic presents best practices for the performance of Web services applications.
Web services are developed and deployed based on standards provided by the Web Services for Java 2 Platform, Enterprise Edition (J2EE) specification and the Java API for XML-Based Web Services (JAX-WS) and Java Architecture for XML Binding (JAXB) programming models, and is the mechanism used to access a Web service. This article explains performance considerations for Web services supported by this specification.
Web services are developed and deployed based on standards provided by the Web Services for Java 2 Platform, Enterprise Edition (J2EE) specification and the Java API for XML-based RPC (JAX-RPC) programming models, and is the mechanism used to access a Web service. This article explains performance considerations for Web services supported by this specification.
When you develop or deploy a Web service, several artifacts are required, including a Web Services Description Language (WSDL) file. The WSDL file describes the format and syntax of the Web service input and output SOAP messages. When a Web service is implemented in the WebSphere Application Server runtime, the SOAP message is translated based on the J2EE request. The J2EE-based response is then translated back to a SOAP message.
The most critical performance consideration is the translation between the XML-based SOAP message and the Java object. Performance is high for a Web service implementation in WebSphere Application Server, however, application design, deployment and tuning can be improved. See Monitoring the performance of Web services applications for more information about analyzing and tuning Web services.
If you are using a Web service application that was developed for a WebSphere Application Server version prior to Version 6, you can achieve better performance by running the wsdeploy command. The wsdeploy command regenerates Web services artifact classes to increase the serialization and deserialization performance.
The wsdeploy command
is supported by JAX-RPC applications that are used with the Feature Pack for
Web Services product. The Java API for XML-Based Web Services (JAX-WS) programming
model that is introduced in the Feature Pack for Web Services product does
not support the wsdeploy command. JAX-WS applications do not need and
should not run the wsdeploy command.
SAAJ 1.3 provides support for Web services
that are developed and implemented based on the Java API for XML Web Services
(JAX-WS) programming model.
IBM provides considerable documentation and best practices for Web services application design and development that details these items and more.
For a list of key Web sites that discuss performance best practices, see Web services: Resources for learning.