/envoy-rate-limit

rate limiting with envoy poc

Primary LanguageGo

Envoy rate limit example

To set up all the dependencies for this test:
make up

You can run the vegeta load test application, to see the rate limiting in action.
make load-test

The rate limit service, should limit the requests based on the Authorization header, and allow up to 10 requests per hour per unique value for the free tier. For paid plans, we allow more requests based on the client token provided on the auth header
This can be configured in config.config

To see how many requests are done by a specific authorization header:

  • connect to the redis container
  • find the key that matches your request header. you can use keys * command to see all keys
  • getting the value of the key will show how manyy requests this key has done: get <key>

Monthly rate limits/ Quotas.

At the branch customer-rate-limit, you can find a solution where the reference rate limiter is added as a submodule and adjusted so it supports monthly rate limits as well.

Readings/blogs/examples