Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
SSRした動的コンテンツをFastlyにキャッシュする
Search
Daishi Kakinoki
April 16, 2019
Technology
0
1.1k
SSRした動的コンテンツをFastlyにキャッシュする
Daishi Kakinoki
April 16, 2019
Tweet
Share
More Decks by Daishi Kakinoki
See All by Daishi Kakinoki
Spacemarket Connect Custom Account
dkakinoki
0
250
Railsでサーバレスなバッチ処理 / Rails Batch Serverless
dkakinoki
1
1.9k
CtoCマーケットプレイスを成長させる オンライン決済の仕組み
dkakinoki
1
840
[Stripe] ConnectのManual Payoutsを利用して 任意のタイミングで売上を入金する
dkakinoki
0
3.4k
Other Decks in Technology
See All in Technology
IIWレポートからみるID業界で話題のMCP
fujie
0
580
AIエージェントの継続的改善のためオブザーバビリティ
pharma_x_tech
6
1.3k
Model Mondays S2E02: Model Context Protocol
nitya
0
120
Amplifyとゼロからはじめた AIコーディング 成果と展望
mkdev10
1
320
Oracle Audit Vault and Database Firewall 20 概要
oracle4engineer
PRO
1
1.6k
OTFSG勉強会 / Introduction to the History of Delta Lake + Iceberg
databricksjapan
0
100
DroidKnights 2025 - Jetpack XR 살펴보기: XR 개발은 어떻게 이루어지는가?
heesung6701
1
150
What's new in OpenShift 4.19
redhatlivestreaming
1
340
AIにどこまで任せる?実務で使える(かもしれない)AIエージェント設計の考え方
har1101
3
1.2k
ObsidianをMCP連携させてみる
ttnyt8701
2
130
Observability infrastructure behind the trillion-messages scale Kafka platform
lycorptech_jp
PRO
0
110
QAはソフトウェアエンジニアリングを学んで実践するのが大事なの
ymty
1
490
Featured
See All Featured
Documentation Writing (for coders)
carmenintech
71
4.9k
The Art of Programming - Codeland 2020
erikaheidi
54
13k
Testing 201, or: Great Expectations
jmmastey
42
7.5k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
130
19k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.8k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
6
690
Git: the NoSQL Database
bkeepers
PRO
430
65k
How to train your dragon (web standard)
notwaldorf
92
6.1k
Adopting Sorbet at Scale
ufuk
77
9.4k
Balancing Empowerment & Direction
lara
1
320
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2.1k
Transcript
SSRした動的コンテンツをFastlyにキャッシュする SPACEMARKETトップページの事例 2019年4月16日 KAKINOKI DAISHI
2 誰? • KAKINOKI DAISHI(@d_kakinoki) • SPACEMARKET所属 • Engineering Manager
• サーバサイドがメイン • 今後Fastlyでやりたいこと ◦ A/B Testing
3 SPACEMARKET? スペースを 借りたい人 (ゲスト) スペースを 貸したい人 (ホスト) 探す・借りる 掲載する・貸す
写真
写真
写真
7 SSRした動的コンテンツをキャッシュする
8 Fastlyでトップページをキャッシュするまでの背景(2018年夏) • 既にアセットはFastly経由で配信 • 2018年11~12月にかけて全国CM放映を予定 →負荷対策、速度の改善が必要 →裏も対策するが、表も対策しておきたい →アクセスが集中するトップページをキャッシュ •
必要に応じてすぐにパージ • とりあえずシンプルに
9 トップページの何をキャッシュするか バナー ヘッダ(未ログイン状態) アイキャッチ カテゴリのランキング など フッタ 未ログインコンテンツをキャッ シュ
バナー ヘッダ(ログイン状態) アイキャッチ カテゴリのランキングな ど フッタ 閲覧履歴 お気に入り クライアントで ログインコンテンツを取得し レンダリング
10 以前(イメージ)
11 Fastlyでキャッシュ(イメージ) 有効なキャッシュがな ければオリジンへ
12 • Cache-ControlとSurrogate-Controlを組み合わせる ◦ (例) • キャッシュとログインコンテンツの要否 ◦ アクセストークン(Cookie)の有無で制御 •
キャッシュしないその他のページは、全てCache-Control: private キャッシュ周りの実装など
13 • www.spacemarket.comのDNSレコード ◦ A → CNAMEに変更、Fastlyを指定 ◦ 全てFastly経由に •
SSL証明書 ◦ EV証明書 ◦ ホスティングサービスを利用 ドメイン周り
14 • Fastly-Debugヘッダ • stagingで事前に確認 ◦ ACL使ってる • 福田さん(中の方)の記事が分かりやすい ◦
FastlyにキャッシュされたオブジェクトのTTL確認方法 • Fastlyのサポート側(福田さん)でも動作確認してくれた 動作確認
15 • 全国CM放映問題なし • その後のTV放映などもキャッシュを利用し負荷対策 • 速度も改善 効果
16 • ドキュメントしっかりしてる • 福田さんのQiita記事が更に分かりやすい • 導入サポートも充実 • 特に福田さん、ありがとうございました。 (お礼を言いにきた)
サポート体制
17 まとめ
18 まとめ • 福田さんありがとうございました。 (お礼を言いにきた)
ご静聴ありがとうございました。