Web services client to web container optimized communication
To improve performance, an optimized communication path between a web services client application and a web container are located in the same application server process. Requests from the web services client that are normally sent to the web container using a network connection are delivered directly to the web container using an optimized local path. The local path is available because the web services client application and the web container run in the same process.
Direct communication eliminates the need for clients and web containers in the same process to communicate over the network. For example, a web services client might run in an application server. Instead of accessing the network to communicate with the web container, the web services client communicates with the web container using the optimized local path. The optimized local path improves the performance of the application server by enabling web services clients and web containers to communicate without network transports.
In a clustered environment, typically an HTTP server, such as IBM HTTP server, handles incoming client requests, distributing them to the correct application server in the cluster. The HTTP server uses information about the requested application and the defined virtual hosts to determine which application server receives the request. The web services client also uses the defined virtual host information to determine if the request can be served by the local web container. Define unique values for the host and port on each application server. We cannot define the values of host and port as wildcards denoted by the asterisk symbol (*) when we enable the optimized communication between the web services application and the web container. Wildcards indicate that the local web container can handle web services requests for all destinations.
The optimized local communication path is disabled by default. We can enable the local communication path with the enableInProcessConnections custom property. Before we configure this custom property, make sure that we are not using wildcards for host names in the web container end points. Set to true in the web container to enabled the optimized local communication path. When disabled, the web services client and the web container communicate using network transports. The custom property applies for JAX-RPC and JAX-WS scenarios, but not for JAX-RS scenarios.
For information about how to configure the enableInProcessConnections custom property, see Web container custom properties in the product documentation.
When the optimized local communication path is enabled, logging of requests through the local path uses the same log attributes as the network channel chain for the web container. To use a different log file for in process requests than the log file for network requests, use a custom property on the HTTP Inbound Channel in the transport chain. Use the localLogFilenamePrefix custom property to specify a string that is added to the beginning of the network log file name to create a file name that is unique. Requests through the local process path are logged to this specified file. For example, if the log file name is ../httpaccess.log for a network chain, and the localLogFilenamePrefix custom property is set to local on the HTTP channel in that transport chain, the local log file name for requests to the host associated with that chain is /localhttpaccess.log.
If we specify a value for the localLogFilenamePrefix custom property, we must also set the accessLogFileName HTTP channel custom property to the fully qualified name of the log file we want to use for in process requests. We cannot specify a variable, such as $(SERVER_LOG_ROOT), as the value for this custom property.
HTTP transport channel custom properties Web container custom properties