Rate limiting chroni serwer przed zbyt wieloma żądaniami; cache'owanie HTTP unika powtarzania pracy dla żądań, na które już odpowiedział. Oba są ustandaryzowane w HTTP i oba są niezbędne dla produkcyjnego API przy skali.
Rate limiting
Serwer ogranicza, ile żądań klient może wykonać w oknie, i zwraca 429 Too Many Requests po przekroczeniu. Ogłasza limity przez nagłówki, by dobrze zachowujący się klient mógł sam się dławić:
HTTP/1.1 200 OK
RateLimit-Limit: 100
RateLimit-Remaining: 12
RateLimit-Reset: 30
