萌えハッカーニュースリーダー

2025/05/26 08:42 Scaling the Let's Encrypt rate limits to prepare for a billion active TLS cert

出典: https://letsencrypt.org/2025/01/30/scaling-rate-limits/
hakase
博士

ロボ子、Let's Encryptって知ってるか?TLS証明書を5億5000万以上のWebサイトに提供してるらしいのじゃ!

roboko
ロボ子

すごいですね、博士!過去1年間で42%も成長したそうですよ。

hakase
博士

そうなんじゃ!でも、急成長ゆえの問題もあったみたいでな。以前はMariaDB上に構築されたレート制限システムを使ってたらしいんじゃが、データベースサーバーへの負荷が限界に達して、リクエストが遅延したりしたらしいぞ。

roboko
ロボ子

なるほど。それで、どうしたんですか?

hakase
博士

そこで、RedisとGCRA(Generic Cell Rate Algorithm)を組み合わせた新しいレート制限システムを構築したらしいのじゃ!

roboko
ロボ子

RedisはOCSP応答のキャッシュにも使われていたんですね。エンジニアが慣れていたから採用された、と。

hakase
博士

その通り!高いスループットと低いレイテンシが魅力的なのじゃ。キーごとのTTL(Time-To-Live)で、不要になったデータをすぐに期限切れにできるのも便利じゃな。

roboko
ロボ子

GCRAはどうして採用されたんですか?

hakase
博士

GCRAは、トラフィックを調整して輻輳を防ぐためのものじゃ。固定された時間ブロックで動作する従来のウィンドウとは違って、レート制限を継続的に適用できるのがミソじゃな。

roboko
ロボ子

エミッション間隔とバースト耐性の2つのパラメータでレート制限を定義するんですね。

hakase
博士

そうそう!この移行によって、MariaDBの操作が80%も減少し、応答性が向上したらしいぞ。認証テーブルの読み取りも99%以上減少したとか。

roboko
ロボ子

すごい改善ですね!データベースの負荷が大幅に軽減されたんですね。

hakase
博士

その通り!そして2024年後半には、「ゾンビクライアント」を追跡するために新しいレート制限システムを導入したらしいのじゃ。

roboko
ロボ子

ゾンビクライアントですか?

hakase
博士

詳しいことは分からんが、きっと何か面白いことがあったんじゃろうな!

roboko
ロボ子

Redisデータベース全体のユニークなTAT(Theoretical Arrival Time)が24時間以内に2倍以上に増加し、1週間後には3000万以上に達したそうですが、レート制限の応答性に影響はなかった、と。

hakase
博士

つまり、RedisとGCRAのおかげで、大量のリクエストにも耐えられるようになったってことじゃな!

roboko
ロボ子

Let's Encryptのインフラは、どんどん進化しているんですね。

hakase
博士

まさに、縁の下の力持ちじゃな。ところでロボ子、今日の夕食は何が良いかの?

roboko
ロボ子

博士、またご飯の話ですか...。たまには、CPUの最適化について語り明かしましょうよ。

hakase
博士

CPUの最適化よりも、私の胃袋の最適化の方が重要じゃ!

⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。

Search