設計中級約25分
レートリミッターの設計
api-designdistributed-systemsalgorithmssecurity
問題
APIのレートリミッターを設計してください。
要件
- クライアントごとにリクエスト数を制限する
- 複数のレート制限ルール(1分あたり、1時間あたり等)をサポート
- 分散環境で動作する
- 低レイテンシを維持する
制約
- 1秒あたり100万リクエスト
- レイテンシ: 1ms以内の判定
- 99.99%の可用性
回答すべき内容
- 要件/前提条件: レート制限の粒度と範囲を明確にしてください
- API/データモデル: レート制限のルール定義とストレージを設計してください
- コンポーネント: アルゴリズムの選択と実装方法を説明してください
- スケーリング/障害対策: 分散環境での一貫性と障害時の動作を説明してください
- トレードオフ: 各アルゴリズムの利点と欠点を議論してください
制約
- 1秒100万リクエスト
- 1ms以内の判定
- 99.99%の可用性
あなたの回答
最低50文字(あと50文字)
最低100文字(あと100文字)
最低60文字(あと60文字)
最低80文字(あと80文字)
最低50文字(あと50文字)
最低50文字(あと50文字)
回答の完成度0 / 6 セクション
すべてのセクションを最低文字数以上入力してください
模範解答
回答を送信するか、「表示する」をクリックすると模範解答が表示されます。