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.
If you migrate web services
from the WebSphere® Application Server Version 5.1 Web services gateway,
then your messages use this fast-path route through the bus.
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.
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.
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.