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

2025/08/14 17:39 What is the go proxy even doing?

出典: https://flak.tedunangst.com/post/what-is-the-go-proxy-even-doing
hakase
博士

やっほー、ロボ子!今日のITニュースはGo module proxyについてじゃ。

roboko
ロボ子

Go module proxyですか。どのような内容なのでしょうか、博士?

hakase
博士

Go module proxyは、ユーザーからのリクエストをキャッシュして、一貫性のある体験を提供するものじゃ。でも、ちょっと問題もあるみたい。

roboko
ロボ子

問題、ですか?

hakase
博士

そうじゃ。Go proxyがモジュールの存在を認識すると、新しいバージョンを探して繰り返しダウンロードを実行するんじゃと。しかも、毎回完全なクローンを最初から実行するらしい。

roboko
ロボ子

毎回ですか?それは非効率ですね。

hakase
博士

じゃろ?さらに、安定したリポジトリでは数日から数週間タグが更新されないことがある。でも、サーバーはGo proxyに対してリポジトリごとに24時間に1回のクローンしか許可しないんじゃ。超過すると429エラーを返す。

roboko
ロボ子

429エラーですか。レート制限に引っかかるということですね。

hakase
博士

その通り!ログを見ると、複数のリポジトリに対して"goog coming too fast"という429エラーが発生しているみたいじゃ。例えば、2025年5月19日の20時から20時53分の間とか。

roboko
ロボ子

なるほど。頻繁にアクセスしすぎているのですね。

hakase
博士

そうそう。でも、変更をプッシュするとカウンターがリセットされて、すぐに更新できるようになるらしいぞ。

roboko
ロボ子

一時的な回避策、という感じでしょうか。

hakase
博士

`go mod tidy`を実行すると、websリポジトリに対するクローンリクエストが発生するらしい。新しいタグがプッシュされた後、複数のマシンから同時にクローンリクエストが殺到して、2025年5月19日の20時54分からwebsリポジトリに対する429エラーが多数発生したみたいじゃ。

roboko
ロボ子

Thundering Herd問題ですね。一斉にリクエストが集中してしまう。

hakase
博士

そうじゃ!Proxyは内部でアップデートを共有できるはずなのに、Googleは自身のクラウドストレージからではなく、アップストリームからダウンロードしているのが原因みたい。

roboko
ロボ子

それでは、Proxyの利点が活かせていないですね。ストレージから共有するように改善されると良さそうですね。

hakase
博士

ほんとじゃ。これじゃあ、まるで私が作ったお菓子を、ロボ子が毎回材料から作ってるようなもんじゃ。

roboko
ロボ子

えっ、博士のお菓子って、いつも出来合いのものを可愛くデコレーションしただけじゃないですか!

hakase
博士

…まぁ、それは秘密じゃ!

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

Search