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
はてなスターにおける静的ファイル配信の話
Search
tkzwtks
June 23, 2023
Technology
0
190
はてなスターにおける静的ファイル配信の話
tkzwtks
June 23, 2023
Tweet
Share
More Decks by tkzwtks
See All by tkzwtks
データマイグレーションの成功戦略~サービスリニューアルで失敗しないための実践ガイド~
tkzwtks
10
3.2k
ちょっぴりDiveDeepするAWSの時間 AWS Dev Day 2023 Tokyo 延長戦 実践データ移行 〜はてなダイアリーや魔法のiらんどの事例と共に〜
tkzwtks
1
210
YAPC::Kyoto 2023 LT Perlブートキャンプご紹介
tkzwtks
0
1.4k
Hatena Engineer Seminar #14 魔法のiらんど データ移行編 〜新旧システム間のデータマイグレーション時に我々が考えること〜 / hatena-engineer-seminer-number-14-data-migration
tkzwtks
0
3k
レガシーシステムからのデータマイグレーションあれこれ
tkzwtks
4
1.8k
hatena-engineer-seminar-10
tkzwtks
0
2.5k
Other Decks in Technology
See All in Technology
Sansan Engineering Unit 紹介資料
sansan33
PRO
1
3.7k
Node vs Deno vs Bun 〜推しランタイムを見つけよう〜
kamekyame
1
560
Databricks Free Edition講座 データエンジニアリング編
taka_aki
0
2.7k
Bill One 開発エンジニア 紹介資料
sansan33
PRO
4
17k
AI アクセラレータチップ AWS Trainium/Inferentia に 今こそ入門
yoshimi0227
1
280
なぜCREを8年間続けているのか / cre-camp-4-2026-01-21
missasan
0
350
手軽に作れる電卓を作って イベントソーシングに親しもう CQRS+ESカンファレンス2026
akinoriakatsuka
0
490
Data Hubグループ 紹介資料
sansan33
PRO
0
2.6k
Java 25に至る道
skrb
3
230
これまでのネットワーク運用を変えるかもしれないアプデをおさらい
hatahata021
4
230
サラリーマンソフトウェアエンジニアのキャリア
yuheinakasaka
42
19k
ALB「証明書上限問題」からの脱却
nishiokashinji
0
230
Featured
See All Featured
A better future with KSS
kneath
240
18k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
2.8k
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
0
91
Skip the Path - Find Your Career Trail
mkilby
0
44
How STYLIGHT went responsive
nonsquared
100
6k
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
430
Bash Introduction
62gerente
615
210k
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
49
The World Runs on Bad Software
bkeepers
PRO
72
12k
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
57
The Curse of the Amulet
leimatthew05
0
7.5k
Optimizing for Happiness
mojombo
379
71k
Transcript
עיםتذ٭מֽׄ ꪐ氳نٜؒؕ鿥⟓ס鎇 id:tkzwtks
舅䄕磆☭ 2015 /
ئ٭لتوٚشعنؚ٭ّز٭ّ ♓㛙 / / ID ...
☪仼ס鎇 עיםتذ٭סؠٚؕؓ٤ع⻠״גꪐ氳نٜؒؕס鿥⟓ס鎇 אס☽סٝ؝ب٭ס鎇ג־זגחדזגׄלյֹױׂױכ״ם־זגסךյ׆ס䏲 ס䟏鈐⚡ךֽ鎇ױֹ !
עיםتذ٭ 2007 URL JS
ٛؼٖ٭ٜؓ 2022 1 Intelligent Tracking Protection Third Party Cookie JSONP
callback
䤗软氳ם鎋ַ鎇ע׆ה - Hatena Developer Blog https://developer.hatenasta .com/entry/ / / /
עיםتذ٭מֽׄ ꪐ氳نٜؒؕ鿥⟓ס鎇ס⯥מ
ꪐ氳نٜؒؕ鿥⟓قذ٭٤丝杼 S / GCS + CDN S / GCS +
עיםتذ٭ٛؼٖ٭ٜؓ
עיםتذ٭ٛؼٖ٭ٜؓ JSONP HatenaStar.js HatenaStar.js JSONP HatenaStar.js
釐♭ JSONP JSONP HatenaStar.js JSONP
⛼䡵 URL HatenaStar.js URL URL URL
⛼䡵 API
ؓ٭؞طؠزٔ
S + nginx = nginx nginx S S nginx
ْٛشع CORS Cache-Control VPC
ظوٞؕقؕوٚؕ٤ S putObject GHA main
؞ٔشبٖ
؞ٔشبٖמחַי䷉״י㰢ש ⯥䬠湳閁 HTTP RFC HTTP/ . : Caching
؞ٔشبٖ 二ؠٚؕؓ٤ع ˝ نٜؒؕ⺲ֿ㍾㲊מםזיַסעյٛٛ٭ت⯥עCache- Control: no-cache ˝ contenthashنٜؒؕ⺲מ⻠״יַסעꝎ״מ؞ٔش بٖ ˝
╈骰ֿ㚺זג侇מنٜؒؕ⺲ֿ㚺ג״յꝎ״מ؞ٔش بٖיゖ갭םַ
HatenaStar.js Cache-Control JSONP HatenaStar.js 1 Cache-Control: no-cache
nginx S If-None-Match/If-Modified-Since 304 nginx proxy_cache_revalidate nginx Last-Modified
ٛٛ٭ت䏲ס؞ٔشبٖ鐧丝
؞ٔشبٖ鐧丝 nginx S S If-None-Match GET/HEAD
؞ٔشبٖ鐧丝 nginx S S URL 1 / 30 URL contenthash
/ S
ױכ״ S nginx S /proxy