Abstract: ABSTRACT METHOD AND SYSTEM FOR SHARED QUOTA BASED THROTTLING OF REQUEST FOR SERVICES IN AN ENTERPRISE SERVICE BUS (ESB) CLUSTER The present invention discloses a system and a method for shared quota based throttling mechanism to control access to the services deployed in an Enterprise Service Bus (ESB) cluster which allocates and distributes the maximum threshold value of service requests as per the quota allocated for each node. If a node has exhausted its allocated quota within the time window, then the quota across all nodes in the cluster is re-allocated and distributed as per the weights allocated for each node.
We Claim:
1. A system (200) for shared quota based throttling of requests for services in an Enterprise Service Bus (ESB) cluster, said system comprising:
- a plurality of nodes in the ESB cluster;
- a distributed cache (201) to store weight and local configuration data for each node;
- a leader node (202) operatively coupled to said plurality of nodes and the distributed cache;
wherein said leader node is configured to:
obtain weight and local configuration data from the distributed cache ;
calculate shared quota for each node based on weight and local configuration data;
allocate and distribute shared quota to each node in the cluster as per maximum threshold value of requests;
update the shared quota of each node in the distributed cache;
track the exhaustion of quota of any node within a pre-defined time window; and
when a node has exhausted the allocated quota within the time window, then re-allocate and distribute the remaining quota across the nodes in the cluster.
2. The system as claimed in claim 1, wherein each node comprises a Decision Maker Unit (203) to count the number of requests to be processed based on the allocated quota and decide whether to accept, block or reject the incoming requests.
3. The system as claimed in claim 1, wherein each node comprises a Policy Enforcer (204) operatively coupled with the Decision Maker Unit, wherein said Policy Enforcer is configured to receive the request from the cluster and for each request based on the decision of said Decision Maker Unit, accept the request and forward it to the service, reject the request or wait for quota reallocation.
4. The system as claimed in claim 1, wherein the local configuration data comprises SLA value of each node.
5. The system as claimed in claim 1, wherein the leader node is the oldest node in the ESB cluster.
6. The system as claimed in claim 1, wherein the distributed cache stores quota exhausted flag of each node.
7. The system as claimed in claim 1, wherein the distributed cache stores shared quota value of each node.
8. The system as claimed in claim 1, wherein the distributed cache stores remaining quota value of each node.
9. A method for shared quota based throttling of requests for services in an Enterprise Service Bus (ESB) cluster with a plurality of nodes, said method comprising:
- storing weight and local configuration data for each node of the cluster in distributed cache (201);
- obtaining said weight and local configuration data, in a leader node (202) and calculating shared quota for each node based on weight and local configuration data;
- allocating and distributing shared quota to each node in the cluster as per maximum threshold value of requests;
- updating the shared quota of each node in the distributed cache;
- tracking exhaustion of quota of any node within a pre-defined time window; and
when a node has exhausted the allocated quota within the time window, then re-allocating and distributing the remaining quota across the nodes in the cluster.
10. The method as claimed in claim 9, wherein the method comprises counting the number of requests to be processed based on the allocated quota in a decision maker unit (203) and deciding whether to accept, block or reject the incoming requests.
11. The method as claimed in claim 9, wherein the method comprises receiving the request from the cluster by a Policy Enforcer (204)and for each request based on the decision accept the request and forward it to the service, reject the request or wait for quota reallocation.
12. The method as claimed in claim 9, wherein the local configuration data comprises SLA value of each node.
13. The method as claimed in claim 9, wherein the method comprises storing quota exhausted flag of each node in the distributed cache.
14. The method as claimed in claim 9, wherein the method comprises storing shared quota value of each node in the distributed cache.
15. The method as claimed in claim 9, wherein the method comprises storing remaining quota value of each node in the distributed cache.
| # | Name | Date |
|---|---|---|
| 1 | 201641020340-IntimationOfGrant16-12-2022.pdf | 2022-12-16 |
| 1 | Power of Attorney [14-06-2016(online)].pdf | 2016-06-14 |
| 2 | 201641020340-PatentCertificate16-12-2022.pdf | 2022-12-16 |
| 2 | Form 5 [14-06-2016(online)].pdf | 2016-06-14 |
| 3 | Form 3 [14-06-2016(online)].pdf | 2016-06-14 |
| 3 | 201641020340-Written submissions and relevant documents [25-10-2022(online)].pdf | 2022-10-25 |
| 4 | Form 18 [14-06-2016(online)].pdf_58.pdf | 2016-06-14 |
| 4 | 201641020340-Correspondence to notify the Controller [08-10-2022(online)].pdf | 2022-10-08 |
| 5 | Form 18 [14-06-2016(online)].pdf | 2016-06-14 |
| 5 | 201641020340-US(14)-HearingNotice-(HearingDate-11-10-2022).pdf | 2022-08-05 |
| 6 | Drawing [14-06-2016(online)].pdf | 2016-06-14 |
| 6 | 201641020340-FORM 3 [24-11-2021(online)].pdf | 2021-11-24 |
| 7 | Description(Complete) [14-06-2016(online)].pdf | 2016-06-14 |
| 7 | 201641020340-CLAIMS [13-05-2020(online)].pdf | 2020-05-13 |
| 8 | 201641020340-Proof of Right (MANDATORY) [05-09-2017(online)].pdf | 2017-09-05 |
| 8 | 201641020340-COMPLETE SPECIFICATION [13-05-2020(online)].pdf | 2020-05-13 |
| 9 | 201641020340-FER_SER_REPLY [13-05-2020(online)].pdf | 2020-05-13 |
| 9 | 201641020340-PA [27-04-2018(online)].pdf | 2018-04-27 |
| 10 | 201641020340-ASSIGNMENTDOCUMENTS [27-04-2018(online)].pdf | 2018-04-27 |
| 10 | 201641020340-OTHERS [13-05-2020(online)].pdf | 2020-05-13 |
| 11 | 201641020340-8(i)-Substitution-ChangeOfApplicant-Form6 [27-04-2018(online)].pdf | 2018-04-27 |
| 11 | 201641020340-PETITION UNDER RULE 137 [13-05-2020(online)].pdf | 2020-05-13 |
| 12 | 201641020340-FER.pdf | 2020-02-25 |
| 12 | Correspondence by Agent_Assignment, Power of Attorney_03-05-2018.pdf | 2018-05-03 |
| 13 | abstract 201641020340.jpg | 2018-05-07 |
| 14 | 201641020340-FER.pdf | 2020-02-25 |
| 14 | Correspondence by Agent_Assignment, Power of Attorney_03-05-2018.pdf | 2018-05-03 |
| 15 | 201641020340-8(i)-Substitution-ChangeOfApplicant-Form6 [27-04-2018(online)].pdf | 2018-04-27 |
| 15 | 201641020340-PETITION UNDER RULE 137 [13-05-2020(online)].pdf | 2020-05-13 |
| 16 | 201641020340-ASSIGNMENTDOCUMENTS [27-04-2018(online)].pdf | 2018-04-27 |
| 16 | 201641020340-OTHERS [13-05-2020(online)].pdf | 2020-05-13 |
| 17 | 201641020340-PA [27-04-2018(online)].pdf | 2018-04-27 |
| 17 | 201641020340-FER_SER_REPLY [13-05-2020(online)].pdf | 2020-05-13 |
| 18 | 201641020340-COMPLETE SPECIFICATION [13-05-2020(online)].pdf | 2020-05-13 |
| 18 | 201641020340-Proof of Right (MANDATORY) [05-09-2017(online)].pdf | 2017-09-05 |
| 19 | Description(Complete) [14-06-2016(online)].pdf | 2016-06-14 |
| 19 | 201641020340-CLAIMS [13-05-2020(online)].pdf | 2020-05-13 |
| 20 | Drawing [14-06-2016(online)].pdf | 2016-06-14 |
| 20 | 201641020340-FORM 3 [24-11-2021(online)].pdf | 2021-11-24 |
| 21 | Form 18 [14-06-2016(online)].pdf | 2016-06-14 |
| 21 | 201641020340-US(14)-HearingNotice-(HearingDate-11-10-2022).pdf | 2022-08-05 |
| 22 | Form 18 [14-06-2016(online)].pdf_58.pdf | 2016-06-14 |
| 22 | 201641020340-Correspondence to notify the Controller [08-10-2022(online)].pdf | 2022-10-08 |
| 23 | Form 3 [14-06-2016(online)].pdf | 2016-06-14 |
| 23 | 201641020340-Written submissions and relevant documents [25-10-2022(online)].pdf | 2022-10-25 |
| 24 | Form 5 [14-06-2016(online)].pdf | 2016-06-14 |
| 24 | 201641020340-PatentCertificate16-12-2022.pdf | 2022-12-16 |
| 25 | 201641020340-IntimationOfGrant16-12-2022.pdf | 2022-12-16 |
| 25 | Power of Attorney [14-06-2016(online)].pdf | 2016-06-14 |
| 1 | 2020-10-2709-57-36AE_05-11-2020.pdf |
| 1 | SEARCHSTRATEGY_201641020340_14-02-2020.pdf |
| 2 | 2020-10-2709-57-36AE_05-11-2020.pdf |
| 2 | SEARCHSTRATEGY_201641020340_14-02-2020.pdf |