All docs This doc
Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 7 Next »

The <ESB_Home>/repository/conf/passthru-http.properties file contains tuning parameters related to the HTTP Pass Through transport. This is the default transport of the WSO2 ESB since it optimises the performance of the ESB in most scenarios. The performance can be further optimised when this transport is used with header based routing or smaller sized messages.

These parameters can be modified as required based on your production environment. This information is provided as a reference for users who are already familiar with the product features and want to know how to configure them.

Pass-through HTTP transport specific tuning parameters

Parameter NameDescriptionDefault Value
worker_pool_size_coreInitial number of threads in the worker thread pool. This can be increased to match an increased number of messages to be processed unit the value specified for the worker_pool_size_max parameter is reached.400
worker_pool_size_maxMaximum number of threads in the worker thread pool. Specifying a maximum limit helps to avoid performance degradation that can occur due to context switching.500
SO_TIMEOUTThe maximum period of inactivity between two data packets. This is given in milliseconds. 
worker_thread_keepalive_secDefines the keep-alive time for extra threads in the worker pool. This should be less than the socket timeout. Once this time has elapsed for an extra thread, it will be destroyed. The purpose of this parameter is to optimise the usage of resources by avoiding wastage that results from having unutilized extra threads.60
worker_pool_queue_lengthDefines the length of the queue that is used to hold runnable tasks to be executed by the worker pool. The thread pool starts queuing jobs when all the existing threads are busy and the pool has reached the maximum number of threads. The value for this parameter should be -1 to use an unbounded queue. If a bound queue is used and the queue gets filled to its capacity, any further attempts to submit jobs will fail causing some messages to be dropped by Synapse. Therefore, the recommended queue length is -1.1
io_threads_per_reactorDefines the number of IO dispatcher threads used per reactor.2
io_buffer_sizeSize in bytes of the buffer through which data passes.16384
http.max.connection.per.host.portDefines the maximum number of connections per host port.32767
http.socket.reuseaddr true

 

Other parameters

Parameter NameDescriptionDefault Value
http.block_service_listIf this parameter is set to true, all the services deployed to the WSO2 ESB cannot be viewed from the http(s):<esb>:8280/services/ URL.true
http.user.agent.preserveIf this parameter is set to true,the User-Agent HTTP header of messages passing through the ESB will be preserved.false
http.socket.timeout

Maximum period of inactivity between two consecutive data packets. Given in milliseconds.

Also defined as SO_TIMEOUT.

 
http.server.preserve true
http.connection.disable.keepalive false
rest.dispatcher.service MultitenantDispatcherService

 

Example

The following example shows excerpts from a passthru-http.properties file.

## This file contains the configuration parameters used by the Pass-through HTTP transport
## Pass-through HTTP transport specific tuning parameters
worker_pool_size_core=400
worker_pool_size_max=500
#worker_thread_keepalive_sec=60
#worker_pool_queue_length=-1
#io_threads_per_reactor=2
io_buffer_size=16384
#http.max.connection.per.host.port=32767
# This property is crucial for automated tests
http.socket.reuseaddr=true
## Other parameters
http.block_service_list=true 
#http.user.agent.preserve=false
#http.server.preserve=true
#http.connection.disable.keepalive=false
rest.dispatcher.service=__MultitenantDispatcherService
  • No labels