Slide 1

Slide 1 text

עיםتذ٭מֽׄ׾ ꪐ氳نٜؒؕ鿥⟓ס鎇 id:tkzwtks

Slide 2

Slide 2 text

舅䄕磆☭ 2015 /

Slide 3

Slide 3 text

ئ٭لتوٚشعنؚ٭ّز٭ّ ♓㛙 / / ID ...

Slide 4

Slide 4 text

☪仼ס鎇 עיםتذ٭סؠٚؕؓ٤ع؅⻠״גꪐ氳نٜؒؕס鿥⟓ס鎇 אס☽סٝ؝ب٭ס鎇׵׊ג־זג׌׾ח׵׽דזגׄלյֹױׂױכ״׼׿ם־זגסךյ׆ס䏲 ס䟏鈐⚡ךֽ鎇׊ױ׊׺ֹ !

Slide 5

Slide 5 text

עיםتذ٭ 2007 URL JS

Slide 6

Slide 6 text

ٛؼٖ٭ٜؓ 2022 1 Intelligent Tracking Protection Third Party Cookie JSONP callback

Slide 7

Slide 7 text

䤗软氳ם鎋׊ַ鎇ע׆ה׼ - Hatena Developer Blog https://developer.hatenasta .com/entry/ / / /

Slide 8

Slide 8 text

עיםتذ٭מֽׄ׾ ꪐ氳نٜؒؕ鿥⟓ס鎇ס⯥מ

Slide 9

Slide 9 text

ꪐ氳نٜؒؕ鿥⟓قذ٭٤؅丝杼 S / GCS + CDN S / GCS +

Slide 10

Slide 10 text

עיםتذ٭ٛؼٖ٭ٜؓ

Slide 11

Slide 11 text

עיםتذ٭ٛؼٖ٭ٜؓ JSONP HatenaStar.js HatenaStar.js JSONP HatenaStar.js

Slide 12

Slide 12 text

釐♭ JSONP JSONP HatenaStar.js JSONP

Slide 13

Slide 13 text

⛼䡵 URL HatenaStar.js URL URL URL

Slide 14

Slide 14 text

⛼䡵 API

Slide 15

Slide 15 text

ؓ٭؞طؠزٔ

Slide 16

Slide 16 text

S + nginx = nginx nginx S S nginx

Slide 17

Slide 17 text

ْٛشع CORS Cache-Control VPC

Slide 18

Slide 18 text

ظوٞؕقؕوٚؕ٤ S putObject GHA main

Slide 19

Slide 19 text

؞ٔشبٖ

Slide 20

Slide 20 text

؞ٔشبٖמחַי䷉״י㰢ש ⯥䬠湳閁 HTTP RFC HTTP/ . : Caching

Slide 21

Slide 21 text

؞ٔشبٖ 二ؠٚؕؓ٤ع ˝ نٜؒؕ⺲ֿ㍾㲊מםזיַ׾׵סעյٛٛ٭ت⯥עCache- Control: no-cache ˝ contenthash؅نٜؒؕ⺲מ⻠״יַ׾׵סעꝎ״מ؞ٔش بٖ׌׾ ˝ ╈骰ֿ㚺؂זג侇מنٜؒؕ⺲ֿ㚺؂׾ג״յꝎ״מ؞ٔش بٖ׊יゖ갭םַ

Slide 22

Slide 22 text

HatenaStar.js Cache-Control JSONP HatenaStar.js 1 Cache-Control: no-cache

Slide 23

Slide 23 text

nginx S If-None-Match/If-Modified-Since 304 nginx proxy_cache_revalidate nginx Last-Modified

Slide 24

Slide 24 text

ٛٛ٭ت䏲ס؞ٔشبٖ鐧丝

Slide 25

Slide 25 text

؞ٔشبٖ鐧丝 nginx S S If-None-Match GET/HEAD

Slide 26

Slide 26 text

؞ٔشبٖ鐧丝 nginx S S URL 1 / 30 URL contenthash / S

Slide 27

Slide 27 text

ױכ״ S nginx S /proxy