diary

I like Hatena Star with a text selection.

2025-12-15

ガーネットの楽譜に手を加えていた。今ピアノでガーネットを練習していて、オリジナルの楽譜に手を入れたうえで弾いているので、手を加えたところを反映するために自分で楽譜を書いている。

ここ何回かのピアノのレッスンで楽譜にまた手を加えていたのだけど、上から修正したり脳内で記憶しているだけだったりな箇所が増えてきたので、データに修正を入れて印刷し直した。

書き直していてどう楽譜に落とし込んだらいいのかよくわからないところがあり、Geminiに聞いたらいい感じに教えてくれて便利だった。


elin.pocke.me

自分が開発しているゲームの攻略サイトをVercelに乗せているのだけど、無料枠の月間100万requestに届きそうなリクエストが起きていたので対策をいれた。

使う前はそんなにリクエスト来ないだろと楽観的に見積もっていた。実際1日のPVも1000に満たないぐらいなのだけど、制約となっているEdge Requestsという指標だと30000req/dayぐらい来ている。単純に30日をかけると90万req/dayになるので、もう突破してもおかしくない。

Edge Requestsは、Vercelにいく全てのHTTPリクエスト数が対象らしい。

ログを見てみると、どうやらNextのprefetch機能が原因になっていそうだと見えた。というのも、ログを見ると(一番よく使われるであろう機能である)キャラクター一覧画面の上の方に表示されるキャラクターの詳細画面へのアクセスが、一覧画面と同じぐらいの数あったため。これは詳細画面で表示されているリンクにprefetchが飛んでいることでリクエスト数が増しているのだろうと推測できる。

ということで、デフォルトの画面内に描画された時にprefetchを行う挙動を、マウスホバー時にprefetchを行うように修正した。これでprefetchの回数が減ってリクエスト数が減ると思う。数日後とかにEdge Requestsの指標とPVを見比べて効果を測定したい。

また、NextのRouter CacheとHTTPのCache-Controlも入れた。基本的にデータを出すだけのWebアプリなので、そこそこ長めのキャッシュを設定した。 これらも多少効果があると期待している。