Ratelimit Architecture #352
Replies: 1 comment
-
|
Without special casing RataLimit, I thought to include the Envoy ratelimiter in the policy engine as a Policy Implementation (A user can include a gRPC or REST service as a policy implementation as well). So this fits well with our Policy story. In this case, envoy/ratelimit works as a library for Policy Engine. During request processing, the Policy Engine would invoke it via an in-process function call instead of making an external gRPC request. If we are not using the Envoy rate limit filter (Envoy is not directly call the envoy/ratelimit service), there is no value in using envoy/ratelimit service. Anyway, this is going to be a library for Policy Engine if we are going as described above. If we go with our own implementation, we can use any rate limit algorithm as well. envoy/ratelimit is using the Fixed Windows algorithm. In my opinion going with a rate limit library or our own implementation is better. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Instead of going with the envoy/ratelimt gRPC service, we can use a library or our own implementation. This eliminates the extra network hop and extra container, and allows rate limiting to be handled like any other policy.
Beta Was this translation helpful? Give feedback.
All reactions