3,500 RPS
トークン操作のピーク(サイレント認証)
セッションベース認証で毎秒3,500リクエストまでゼロエラー
AuthrimのOAuth 2.0/OIDCエンドポイントは、K6 Cloud分散負荷テストを使用して厳密にテストされ、本番環境相当の条件下でのパフォーマンス、安定性、ゼロエラー動作が検証されています。
3,500 RPS
トークン操作のピーク(サイレント認証)
セッションベース認証で毎秒3,500リクエストまでゼロエラー
150 LPS
フルログインフロー
OTP検証を含む完全なOAuthフローで毎秒150ログイン
100%
トークン検証精度
全トークンタイプ(有効、期限切れ、失効)で完璧な精度
0%
エラー率
推奨キャパシティ範囲内でHTTPエラーゼロ
| コンポーネント | 構成 |
|---|---|
| 負荷生成 | K6 Cloud (Amazon US Portland / Tokyo) |
| ターゲット | Cloudflare Workers (conformance.authrim.com) |
| インフラ | Workers + Durable Objects + D1 + KV |
| テスト期間 | 2025年12月 |
| テスト時間 | シナリオごとに3〜5分 |
| エンドポイント | 推奨RPS | ピークRPS | レイテンシP95 | 詳細 |
|---|---|---|---|---|
| サイレント認証 | 2,500 | 3,500 | <500ms | レポートを見る → |
| UserInfo | 2,000 | 2,500 | <350ms | レポートを見る → |
| トークン交換 | 1,500 | 2,500 | <300ms | レポートを見る → |
| リフレッシュトークン | 2,500 | 3,000 | <500ms | レポートを見る → |
| トークンイントロスペクション | 300 | 500 | <350ms | レポートを見る → |
| フルログイン(OTP) | 100 | 150 | <800ms | レポートを見る → |
セッションCookieによるサイレント認証(prompt=none):
| RPS | P50 | P95 | P99 | 状態 |
|---|---|---|---|---|
| 500 | 407ms | 454ms | 536ms | ✅ |
| 1,000 | 403ms | 453ms | 528ms | ✅ |
| 1,500 | 404ms | 471ms | 530ms | ✅ |
| 2,000 | 405ms | 452ms | 528ms | ✅ |
| 2,500 | 652ms | 794ms | 838ms | ✅ |
| 3,000 | 1,243ms | 1,583ms | 1,642ms | ✅ |
| 3,500 | 615ms | 1,631ms | 1,727ms | ✅ |
| 4,000 | 458ms | 669ms | 5,622ms | ⚠️ |
構成: 64シャード、500セッション事前作成
JWT RS256によるBearerトークン検証:
| RPS | P50 | P95 | P99 | 状態 |
|---|---|---|---|---|
| 1,000 | 114ms | 139ms | 200ms | ✅ |
| 2,000 | 118ms | 254ms | 350ms | ✅ |
| 2,500 | 127ms | 325ms | 585ms | ⚠️ |
| 3,000 | 150ms | 1,032ms | 1,736ms | ⚠️ |
特徴: JWKキャッシュ、ユーザーデータキャッシュ(KV)
マイクロサービス認証用RFC 8693トークン交換:
| RPS | P50 | P95 | P99 | 状態 |
|---|---|---|---|---|
| 2,000 | 112ms | 500ms | 589ms | ⚠️ |
| 2,500 | 76ms | 225ms | 297ms | ✅ |
| 3,000 | 1,657ms | 2,144ms | 2,269ms | ❌ |
特徴: 混合トークンタイプ(70%有効、10%期限切れ、10%無効、10%失効)
盗難検知付きトークンローテーション:
| RPS | P50 | P95 | P99 | 状態 |
|---|---|---|---|---|
| 200 | 9ms (Worker) | - | 816ms | ✅ |
| 3,000 (32シャード) | 12ms | 100ms | 781ms | ⚠️ |
| 3,000 (48シャード) | 12ms | 39ms | 43ms | ✅ |
重要な発見: シャード数を32→48に増加でDO P99が781ms→43msに改善
Durable Objectのシャーディングは高RPS時のパフォーマンスに直接影響:
| テスト | シャード数 | 結果 |
|---|---|---|
| リフレッシュトークン @3000 RPS | 32 → 48 | DOエラー: 11,972 → 0 |
| サイレント認証 @4000 RPS | 64 → 128 | HTTP失敗: 160 → 0 |
| フルログイン @100 LPS | 16 → 32 | DOエラー: 443 → 0 |
全テストでWorker CPU時間は安定:
ボトルネックはCPU処理ではなくDurable Objectのウォール時間(キュー待機)です。
| キャッシュタイプ | 効果 |
|---|---|
| JWKキャッシュ (DO) | JWT検証がP50で2msを維持 |
| ユーザーキャッシュ (KV) | D1読み取りが96%削減 |
| RBACキャッシュ | クレーム取得が5分に1回 |
150 LPSでの各ステップの所要時間:
| ステップ | 平均 | P95 |
|---|---|---|
| AuthorizeInit | 106ms | 129ms |
| EmailCodeGenerate | 217ms | 279ms |
| EmailCodeVerify | 260ms | 336ms |
| AuthorizeCode | 68ms | 88ms |
| 合計 | 652ms | 756ms |
P99 < 1秒でのSLA保証運用向け:
| エンドポイント | 最大RPS | 月間ボリューム |
|---|---|---|
| サイレント認証 | 2,000 | 52億 |
| トークン操作 | 2,500 | 65億 |
| フルログイン | 100 | 2.6億 |
許容可能なレイテンシ劣化での短期バースト向け:
| エンドポイント | 最大RPS | 備考 |
|---|---|---|
| サイレント認証 | 3,500 | P99 約1.7秒 |
| トークン操作 | 3,000 | ゼロエラー |
| フルログイン | 150 | P95 < 800ms |
flowchart TB
subgraph K6["K6 Cloud (分散)"]
LZ1["Portland Load Zone"]
LZ2["Tokyo Load Zone"]
end
subgraph CF["Cloudflare Edge"]
W["Workers"]
DO["Durable Objects (シャード化)"]
KV["KV Cache"]
D1["D1 Database"]
end
K6 -->|HTTPS| W
W --> DO
W --> KV
W --> D1
DO --> D1
各エンドポイントには、完全なテスト方法論、生データ、インフラメトリクスを含む専用レポートがあります:
サイレント認証
セッションベースのサイレント認証
UserInfo
Bearerトークン検証
トークン交換
RFC 8693トークン交換
トークンイントロスペクション
RFC 7662トークンイントロスペクション
リフレッシュトークン
盗難検知付きトークンローテーション
フルログイン(OTP)
Mail OTPによる完全なOAuthフロー