The Server Request Broker (SRBroker) component routes and processes both synchronous and asynchronous server requests from the application object manager to a batch component or between 2 batch components.
- Synchronous server requests are those requests from the source component which waits till the request gets processed.
- asynchronous server requests are those requests from the source component which does not wait for the requests to get completed.
Any server requests that are originating from the Application Object manager always go to the SRBroker component which further routes the request to the appropriate server component for further processing.
SRBroker determines what to do with the request based on the below logic:
- If the destination component which can process the request from the application object manager is in the same Siebel server, then SRBroker routes the request to the component. If there are multiple instances of the same component enabled and running on the same siebel server, it routes the request on a Round robin fashion.
- If the destination component is not available on the same server where the request was originated from the application object manager, then SRBroker will route the request to SRBroker on another siebel server where the destination component is available. If the destination component is enabled and running on multiple other siebel servers, then SRBroker will route the request to SRBroker on another siebel server on a round robin fashion.
- If the destination component which is needed to process the originating request from the application object manager is not available in any of the servers, then the request will fail.
SRBroker performance tuning
MaxTasks, MaxMTServers and MinMTServers component parameters of the SRBroker component determine the performance of it.
MaxTasks by default is set to '100'
You can adjust the value of MaxTasks by using the below formula:
MaxTasks=number_of_batch_components_in_siebel_server + number_of_siebel_servers + 10 (buffer)
By default MaxMTServers and MinMTServers are set to '1'. Increasing the value will not have any performance improvement.