Rate limiting in a decentralized control plane of a computing system
First Claim
1. A method of processing a request for a service of a control plane in a computer system, comprising:
- receiving the request, from a client, at a service host process executing on a software platform of the computer system;
generating an operation object in the service host process that encapsulates a request/response pattern started by the request, the operation object including a plurality of fields that store a context for the request/response pattern within the service host process;
determining a key based on the context stored by the plurality of fields;
obtaining a rate limit associated with the key; and
permitting or denying the request for the service based on whether a rate of requests targeting the service exceeds the rate limit.
2 Assignments
0 Petitions
Accused Products
Abstract
A method of processing a request for a service of a control plane in a computer system includes receiving the request, from a client, at a service host process executing on a software platform of the computer system; generating an operation object in the service host process that encapsulates a request/response pattern started by the request, the operation object including a plurality of fields that store a context for the request/response pattern within the service host process; determining a key based on the context stored by the plurality of fields; obtaining a rate limit associated with the key; and permitting or denying the request for the service based on whether a rate of requests targeting the service exceeds the rate limit.
51 Citations
20 Claims
-
1. A method of processing a request for a service of a control plane in a computer system, comprising:
-
receiving the request, from a client, at a service host process executing on a software platform of the computer system; generating an operation object in the service host process that encapsulates a request/response pattern started by the request, the operation object including a plurality of fields that store a context for the request/response pattern within the service host process; determining a key based on the context stored by the plurality of fields; obtaining a rate limit associated with the key; and permitting or denying the request for the service based on whether a rate of requests targeting the service exceeds the rate limit. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A non-transitory computer readable medium comprising instructions, which when executed in a computer system, causes the computer system to carry out a method of processing a request for a service of a control plane in a computer system, comprising:
-
receiving the request, from a client, at a service host process executing on a software platform of the computer system; generating an operation object in the service host process that encapsulates a request/response pattern started by the request, the operation object including a plurality of fields that store a context for the request/response pattern within the service host process; determining a key based on the context stored by the plurality of fields; obtaining a rate limit associated with the key; and permitting or denying the request for the service based on whether a rate of requests targeting the service exceeds the rate limit. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. A computer system, comprising:
-
a hardware platform having a central processing unit (CPU), memory, and storage; a software platform executing on the hardware platform, the software platform includes a service host process of a control plane, the service host process executable by the CPU to; receive a request for a service, from a client, at the service host process; generate an operation object in the service host process that encapsulates a request/response pattern started by the request, the operation object including a plurality of fields that store a context for the request/response pattern within the service host process; determine a key based on the context stored by the plurality of fields; obtain a rate limit associated with the key; and permit or deny the request for the service based on whether a rate of requests targeting the service exceeds the rate limit.
-
Specification