TTYPEARCHYOSAKA JADE

ruby · @btsouth

Rails: request limiter

63.7WPM
60.11sComplete passage
Accuracy
96.2%
Raw speed
67.9WPM
Mistakes
13
Rule
Correct every error
Race this run Standings
Passage progress0.00 / 60.11s
Passage and playback
def rate_limiting(to:, within:, by:, with:) limiter = Kredis.limiter "rate-limit:#{controller_path}:#{instance_exec(&by)}", limit: to, expires_in: within if limiter.exceeded? ActiveSupport::Notifications.instrument("rate_limit.action_controller", request: request) do instance_exec(&with) end else limiter.poke end end

David Heinemeier Hansson. Rails (MIT). https://github.com/rails/rails/blob/179b979ddbb7bcc4d1a12d0d71779f47c1c9d9cd/actionpack/lib/action_controller/metal/rate_limiting.rb#L52-L62

Score calculated from recorded input
typearchy.com/a/bdg9rsshr8q9