In Oracle Service Bus, you can restrict the message flow to a business service. This technique of restricting a message flow to a business service is known as throttling.
Limiting the concurrent requests for a Business Service cannot be set at design time so you have to use the built-in Oracle Service Bus Administration Console to do it (/sbconsole). Follow these steps to enable it:
- In Change Center, click Create to start a new Session
- Select Project Explorer, and navigate to the Business Service you want to limit
- Select the Operational Settings tab of the View a Business Service page
- In this tab, under Throttling, select the Enable check box. By enabling throttling you
- Specify a value for Maximum Concurrency
- Specify a positive integer value for Throttling Queue to backlog messages that has exceeded the message concurrency limit
- Specify the maximum time in milliseconds for Message Expiration a message can spend in Throttling Queue
- Click Update
- Click Active in Change Center to active the new settings
If you re-publish the service, it will not overwrite the settings. Only if the resource is renamed or moved, it will.
Please note that a throttling queue is an in-memory queue. Messages that are placed in this queue are not recoverable when a server fails or when you restart a server.
No comments:
Post a Comment