• Heinrich Lee Yu's avatar
    Improve tracking of requests in rate limiter · 7c3c7942
    Heinrich Lee Yu authored
    This follows Rack::Attack's strategy in counting requests in Redis. This
    ensures that we don't end up in a state where the counter never expires
    and the user is always blocked. This could happen if the process gets
    terminated between the INCR and EXPIRE calls.
    
    With the new approach, the expiry is less important and is only used so
    that we don't store useless keys in Redis.
    
    Changelog: fixed
    7c3c7942
application_rate_limiter.rb 8.25 KB