レート制限ポリシー

レート制限ポリシー

概要

Authleteは、プラットフォームを保護し、また高可用性および高パフォーマンスを維持するために、レート制限を導入しています。このドキュメントでは、ユーザーがアプリケーションを構築する際に滞りなく計画を立てられるよう、当社が実施しているレート制限の種類について説明します。

レート制限の種類

プラットフォームの可用性と安定性を確保するために、様々な種類の制限を使用しています。ただし原則としてAuthlete APIへのすべてのコールに対して、制限が適用されます。制限に達した場合、リクエストがレート制限に引っかかり、実行されないままAuthleteからステータスコード429のレスポンスが返されます。

以下に、適用されるレート制限の種類とその使用場面について説明します。

  • 環境レベルの制限 (Environment Limits): 特定の環境において受信されるリクエストの総数が、設定された容量を超えないようにするための固定のグローバル制限です。この制限は、特定容量(例:1500 RPS)の契約に依存する専用環境(Dedicated Cloud)デプロイメントを使用するエンタープライズプランに対して適用され、認可プロセスにおいて使用されるAPIエンドポイント(/auth/*)を主な対象としています。
  • サービスレベルの制限 (Service Limits): サービスがAPIリクエストを送信する際に、リクエストの最大数を制御するための制限です。制限は課金プランによって異なり、環境の容量を問わず適用されます。共用環境(Shared Cloud)デプロイメントにおける無料プランおよびビジネスプランに対して実施されます。
  • リクエスト送信元の制限 (Requester Limits): 不正アクターに対する第一防衛線となる制限です。リクエスト送信元のIPアドレスおよびAPIキー(あるいはAPIトークン)を基に適用されます。この制限は、共用環境(Shared Cloud)にのみ適用され、通常20 RPSに設定されています。
  • ユーザー制限 (User Limits): ユーザーがAuthleteの管理コンソールやその他のWebアプリケーションを使用する際に適用される制限です。制限はユーザーの識別情報に基づいて適用され、すべての環境に対して実施されます。

以下が制限とその使用場面の概要になります。

制限の種類 キー 制限値 共用環境(Shared) 専用環境(Dedicated)
環境 - 契約容量
サービス サービスID 組織またはサービスオーナーのプラン
リクエスト送信元 IPアドレス
APIキー
APIトークン
20 RPS
ユーザー ユーザーID 5 RPS

バーストまたは猶予制限

環境レベルの制限とサービスレベルの制限のどちらに対しても猶予枠が設けられており、厳格なレート制限が実施される前に、バースト(突発的な負担)を吸収するため、一定期間(通常最大3分間)において最大20%のリクエスト数の増加が許可されます。

レート制限枠

共用環境におけるサービスレベルの制限

以下が共用環境においてサービスが属する組織、またはサービスオーナーのプランに基づくレート制限の概要になります。

Authlete 3.0プラン Authlete 2.3プラン 1サービスあたりのRPS
無料 無料 5
ビジネス プレミアム 20

専用環境の制限

前述の通り、専用環境においては、ユーザー契約によって定められた固定のグローバル制限が設けられています。例えば、100 RPSの容量を持つ専用環境を使用した場合、数分間は120 RPSの猶予制限が実施されます。