Tuning bus-enabled web services

You can use the administrative console or a Jacl script to tune performance settings for service integration bus-enabled web services.

About this task

Bus-enabled web services dynamically use a fast-path route through the bus where possible. This fast-path route is used if the following criteria are met:

  • The inbound port and outbound port for the service are on the same server.
  • There are no mediations on the path from the inbound port to the outbound port.
Further optimizations can be made, if your configuration also meets the following criteria:
  • The inbound template WSDL URI is the same location as the Outbound Target Service WSDL location URI.
  • The inbound service template WSDL service name matches the outbound WSDL service name.
  • The inbound service template port name matches the outbound WSDL port name.
  • The mapping of the namespaces is disabled (that is, you have set the inbound service property com.ibm.websphere.wsgw.mapSoapBodyNamespace to false).
  • Operation-level security is not enabled on the outbound service.

If your web services use the fast-path route, you need not tune mediations or the service integration bus. However it is good practise to do so, because a typical environment will have at least one non-fast-path (for example, mediated) service.

To improve the performance of bus-enabled web services you can tune the following parameters:
  • The Java™ virtual machine heap size. This helps ensure there is enough memory available to process large messages, or messages with large attachments.
  • The maximum number of instances of a message-driven bean that are permitted by the activation specification for the service integration technologies resource adapter. This throttles the number of concurrent clients serviced.
  • The maximum batch size for batches of messages to be delivered to a client. By default, only a single message is delivered to a message-driven bean instance at one time; you can improve performance by allowing messages to be sent in batches to a message-driven bean.
  • [AIX Solaris HP-UX Linux Windows][IBM i]The number of threads available to service requests for each client. That is, the number of threads available in the default thread pool, the web container thread pool and the mediation thread pool for a given application server.
  • [AIX Solaris HP-UX Linux Windows][IBM i]The number of threads available in the mediation thread pool. This assumes that your mediations use concurrent support where appropriate, as explained in Concurrent mediations.

If you have mediations that act on SOAP headers, you can improve performance by inserting the associated header schemas (.xsd files) into the SDO repository.

Procedure