Thursday 20 February 2020

OSB 12c : Message Throttling for a Business Service

Why? - To control the flow of messages to a business service and prevent delays, you can enable and configure message throttling or throttling for business services in your Service Bus applications.

What? - When you use throttling to control message flow, a throttling queue is created, in which messages are queued when a business service reaches its maximum concurrency or when a group limitation reaches its maximum competition. Messages with the same priority are processed on a first-in-first-out basis.
The Throttling Queue is a queue in memory. Once a message has been in the Throttling Queue for an interval greater than the message expiration value configured for the business service, it becomes an expired message and is removed from the queue. When you delete or rename a business service, all messages in the throttling queue are deleted.
When you enable or disable Throttling, as well as the configuration of throttling properties, in the Properties tab of the home page of the business service in Fusion Middleware Control, all the modifications that you apply on this page take effect immediately.

How? - When Throttling is enabled, message flow is restricted to endpoints and messages are processed by priority. You can optionally prioritize messages using the routing options; otherwise, messages are deleted using the first in, first out method.

To configure the limitation for a business service:
1. In the Target Navigation panel of the Fusion Middleware Control, extend SOA > service-bus and click on the name of the project that contains the business service to configure.

2. The Service Bus Project home page appears, click on Properties

3. Check the Throttling State enabled checkbox :













4. Enter the following information:
Maximum Concurrency : The maximum number of records that the business service can process simultaneously. This value cannot be 0 (zero); it must be a positive integer.
Throttling Queue : The maximum number of messages in the Throttling Queue. A value of 0 indicates that there is no Throttling Queue.
Message Expiration : The number of milliseconds that a message can be in the queue before expiration. A value of 0 means that messages do not expire.

To deactivate the limitation for a business service, simply un-check the Throttling State box :









Helpful? Comment.

Happy Learning!

No comments:

Post a Comment

OSB 12c : Dynamic Routing to Business/Proxy Service

Dynamic routing is a kind of  Content-based Routing pattern, which is used when the BusinessService/ProxyService path is required to be de...