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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
tkzwtks
June 23, 2023
Technology
230
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
はてなスターにおける静的ファイル配信の話
tkzwtks
June 23, 2023
More Decks by tkzwtks
See All by tkzwtks
データマイグレーションの成功戦略~サービスリニューアルで失敗しないための実践ガイド~
tkzwtks
10
3.6k
ちょっぴりDiveDeepするAWSの時間 AWS Dev Day 2023 Tokyo 延長戦 実践データ移行 〜はてなダイアリーや魔法のiらんどの事例と共に〜
tkzwtks
1
240
YAPC::Kyoto 2023 LT Perlブートキャンプご紹介
tkzwtks
0
1.5k
Hatena Engineer Seminar #14 魔法のiらんど データ移行編 〜新旧システム間のデータマイグレーション時に我々が考えること〜 / hatena-engineer-seminer-number-14-data-migration
tkzwtks
0
3.2k
レガシーシステムからのデータマイグレーションあれこれ
tkzwtks
4
1.8k
hatena-engineer-seminar-10
tkzwtks
0
2.6k
Other Decks in Technology
See All in Technology
設計の世代交代を乗り越える、14年続くAndroidアプリの開発戦略
sansantech
PRO
1
130
enechainの内製セルフサービスプラットフォーム
hiyosi
0
110
DMMブックスのNext.js化を加速させるAI活用 / Migrating DMM Books to Next.js with AI
kentarom
1
330
多層防御と最⼩権限で実現する、安全なAIエージェント設計パターン
lycorptech_jp
PRO
0
190
Guerilla InnerSource in enterprises, during the AI hype
onenashev
PRO
0
150
Genie Code ワークショップ 応用編 / Genie-Code-Workshop-advanced
databricksjapan
PRO
0
330
[RSJ26] NarrativeFlow: Flow-Based Vision-Language-Action Model Using Robot Velocity Fields
keio_smilab
PRO
0
160
少人数データチームのDevin活用実践事例
runandy16
2
440
作り直せるコードは迅速に 作り直せないDBは慎重に - AI時代のプロダクトエンジニアが「判断の不可逆性」で開発速度を変える話
kinosuke01
0
230
PdMをやめて、 "プロダクトビルダー"という 働き方に変えました / PdM to Product Builder
shikichee
2
710
AIに丸投げしないトイル削減 / Eliminating Toil Without Leaving It All to AI
kohbis
2
260
[DroidKaigi 2026] Making UI specifications visible: Android UI development in the AI agent era supported by Compose Screenshot Testing and galleries
syarihu
0
570
Featured
See All Featured
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
490
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
520
KATA
mclloyd
PRO
35
15k
Claude Code のすすめ
schroneko
67
230k
Why Our Code Smells
bkeepers
PRO
340
58k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.5k
Documentation Writing (for coders)
carmenintech
77
5.5k
Unsuck your backbone
ammeep
672
58k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
520
Google's AI Overviews - The New Search
badams
0
1.6k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
23k
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
290
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