大規模メディアにおけるNext.js とVercelのレンダリングとキャッ シュ戦略について
by
hanetsuki
Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
Jamstackチョットデキル 大規模メディアにおけるNext.js とVercelのレンダリングとキャッ シュ戦略について hanetsuki|chot Inc.
Slide 2
Slide 2 text
自己紹介 hanetsuki TWITTER: @hantsuki_dev #TypeScript #Next.js #AB型 #2児の父 #日本酒 #アニメ・エンタメ #イラスト #漫画 #ゲーム 最近は、「ぼっち・ざ・ろっく」を周回視聴したり、 「スプラトゥーン3」「ホグワーツ・レガシー」をプレイ したりしている。
Slide 3
Slide 3 text
VercelとNext.jsで使える レンダリングについておさらい
Slide 4
Slide 4 text
ISR 速報性を重視するページなら SG 速報性を重視しないページなら SSR 動的な処理を実施したいなら
Slide 5
Slide 5 text
メディアサイトの要件 速報性を重視する。 そのために、 を60sに設定したISR を多く利用しました。 revalidate
Slide 6
Slide 6 text
月間3000万PVの罠
Slide 7
Slide 7 text
月間3000万PVの罠 ISRの裏側のページビルドは、 Serverless Function Executionに加算される。 VercelのProプランでは、 1000 GB-Hrsを超えた場合、 100 GB-Hrsあたり$40の従量課金になります。
Slide 8
Slide 8 text
月間3000万PVの罠 日におおよそ、250 GB-Hrs これが、30日で7500 GB-Hrs 1000 GB-Hrsを超えた場合、100 GB-Hrsあたり $40追加なので$2600 為替レート135円を想定すると ランニングコストは351,000円/月
Slide 9
Slide 9 text
どう考えてもやばい...
Slide 10
Slide 10 text
速報性を重要視するためのもう一つの施策 On-demand ISR
Slide 11
Slide 11 text
On-demand ISRとは何か? 任意のタイミングで、SG, ISRされたコンテン ツのCDNキャッシュをパージしてページを生 成しますという機能。 https://nextjs.org/docs/basic-features/data-fetching/incremental-static-regeneration#on- demand-revalidation
Slide 12
Slide 12 text
On-demand ISRを適応した結果 日におおよそ、60 GB-Hrs これが、30日で1800 GB-Hrs 1000 GB-Hrsを超えた場合、100 GB-Hrsあたり $40追加なので$320 為替レート135円を想定すると ランニングコストは43,200円/月
Slide 13
Slide 13 text
比べてみると... $2600 $320 為替レート135円を想定して 約30万円のコストダウン
Slide 14
Slide 14 text
いや〜ホッとしました。
Slide 15
Slide 15 text
速報性を意識するなら最初から On-demand ISRを視野に入れよう。 お客さんのニーズで言うところの速報性は、 通常のISRでは完全には補えない。 まとめ
Slide 16
Slide 16 text
ご清聴ありがとうございました