Web APIリクエストスロットリングを実装する一般的な方法は何ですか?一時的な禁止とともにこれを提供する一般的なWebフレームワーク(Rails、Django、Javaなど)用のライブラリはありますか?
関連する質問は、IPによってリクエストを制限することにより、Webサーバーでレート制限が行われることを示唆していますが、それはすべてのリクエストが同等に扱われることを意味します。次の理由により、スロットルをアプリケーションで処理する必要があるようです。
- 一部のAPI呼び出しには、異なるレート制限がある場合があります(たとえば、オートコンプリートAPIには、他の呼び出しよりも高い制限があります)
- APIキーによる一時的な禁止は、Webサーバーでは処理できません
- プロキシの背後からのリクエストは同じように扱われます(?)