Theo not touching the twitch chat demo at all was so infuriating it's funny
I find it funny how every Theo video starts with "I've been planning these for a while" And ends up just reading another person's content
Video games solved rate limiting decades ago with mana and cooldowns. The token bucket is just a mana pool.
Adjustable rate limiting middleware using db, in memory cache, or redis for persistence is less than an afternoon task. Make it sufficiently small to not cause "damage" and adjust it for different routes. Sliding window/leaky bucket is fine. If your users need to know how many requests they have left then send that info in headers or body depending on your structure. There's plugins to manage this for every framework.
You can gameify the token bucket thing calling it "stamina" and every gamer instantly understands how it works
bro this is arc, bro is A b testing his Hair and browser
Important note about rate-limiting on IP address: Where with IPv4 you are lucky to have a single /32, with IPv6 each network gets at least a whole /64, and usually more than that. This means that attackers have about 2^64 addresses to their disposal. Easy fix would be to rate-limit on the first 64 bits instead of the whole IP. But you should really have some kind of incremental blocking system where you first block a /128, then a /64, then a /60, then a /56, etc, etc.
rate limit is the reason why this video took so long to upload
You'll never rate-limit the lusty throbs of my heart
I wish the API frameworks would support Retry-after: better. Interpreting and doing something right with that header can make client calls take a lot of code. I just want the client library to do the right thing with it. I suppose keeping the user apprised of what's going on will always be a lot of extra code though.
Holy f*ck. This guy is really dedicated. He probably recorded this a month ago. Insane. Kudos bro, you will hit 1M very soon.
I feel like this is a really old vid
for the floating window what helped me was understanding the amount of requests currently is % across previous windows * ∑(requests in previous window) + requests since the new window
The one place I've implemented rate limiting myself is pretty similar to Twitch's slowmode. Basically, you're allotted one request per the time period set. This request, partially for user acceptance, takes some significant time period (with a loading state). After the rate limit time, you're able to make another request. It's by username, so you could get around it with that.
Great video! Definitely gonna try it
Is there a reason to do passwords at all now? Just do what google does but use an open source version.
He upgraded back to mustache 🙌🙌🙌
the visuals in this hit hard
youtube should do that instead of just randomly deleting comments
@samuelgunter