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
deploy legacy web on the cloud
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Ching Yi Chan
November 14, 2014
Programming
1.8k
2
Share
deploy legacy web on the cloud
2014 JCCONF 快講:老舊 Web 上雲端
talk from
http://jcconf.tw/legacy-web-to-cloud.html
Ching Yi Chan
November 14, 2014
More Decks by Ching Yi Chan
See All by Ching Yi Chan
[coscup] Reading and modifying the source code of the dbt adapter
qrtt1
0
180
twjug-lite-17 結束了幾個月的 Java Web 培訓 站在人蔘迷途的我
qrtt1
0
120
[twjug-lite] 迷你研發部 [1]
qrtt1
0
1.2k
寫個好懂的程式
qrtt1
1
660
OAuth 2.0 Authorization Code Flow
qrtt1
0
330
types of knowledge
qrtt1
1
1.4k
twjug 小活動
qrtt1
0
510
TWJUG 2019
qrtt1
0
240
Learning Concepts
qrtt1
0
270
Other Decks in Programming
See All in Programming
S3ストレージクラスの「見える」「ある」「使える」は全部違う ─ 体験から見た、仕様の深淵を覗く
ya_ma23
0
1.2k
Claude Codeログ基盤の構築
giginet
PRO
7
3.8k
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
1.2k
AI Assistants for YourAngular Solutions @Angular Graz, March 2026
manfredsteyer
PRO
0
130
一度始めたらやめられない開発効率向上術 / Findy あなたのdotfilesを教えて!
k0kubun
3
2.7k
AIコードレビューの導入・運用と AI駆動開発における「AI4QA」の取り組みについて
hagevvashi
0
580
Strategy for Finding a Problem for OSS: With Real Examples
kibitan
0
130
AI時代のシステム設計:ドメインモデルで変更しやすさを守る設計戦略
masuda220
PRO
6
1.1k
Agentic AI: Evolution oder Revolution
mobilelarson
PRO
0
220
PHPのバージョンアップ時にも役立ったAST(2026年版)
matsuo_atsushi
0
280
ポーリング処理廃止によるイベント駆動アーキテクチャへの移行
seitarof
3
1.3k
forteeの改修から振り返るPHPerKaigi 2026
muno92
PRO
3
100
Featured
See All Featured
Discover your Explorer Soul
emna__ayadi
2
1.1k
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
160
エンジニアに許された特別な時間の終わり
watany
106
240k
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.2k
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
92
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
320
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
0
190
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
62
53k
Building Adaptive Systems
keathley
44
3k
Designing Powerful Visuals for Engaging Learning
tmiket
1
320
Prompt Engineering for Job Search
mfonobong
0
240
Context Engineering - Making Every Token Count
addyosmani
9
790
Transcript
老舊 Web 上雲端 qrtt1 #JCConf
ϼᔚ8FCɪථ၌ɽၤ $BDIF $%/ "DUJWF$BDIF ০࿁வϣਪᕚה፯ٙ˴ࠅ˙ج
$BDIF $%/ "DUJWF$BDIF ০࿁வϣਪᕚה፯ٙ˴ࠅ˙ج ྼ᜕ሯٙ˴ਗόҞ՟ ڢ੬ెพ ࠠอܠϽҞ՟ٙ࿁ၾഄଫ ϼᔚ8FCɪථ၌ɽၤ
$BDIF $%/ "DUJWF$BDIF ০࿁வϣਪᕚה፯ٙ˴ࠅ˙ج ྼ᜕ሯٙ˴ਗόҞ՟ ڢ੬ెพ ࠠอܠϽҞ՟ٙ࿁ၾഄଫ ਕٜՑ˰ޢٙး᎘ ϼᔚ8FCɪථ၌ɽၤ
老舊 Web 上雲端 ݊ɓ၇࿁ೌجၪᚐٙ8FCਖ਼ࣩٙయ၈
老舊 Web 上雲端 CBETNFMMɽණΥ όᅵٙEVQMJDBUFEDPEF όᅵٙMPOHNFUIPE DMBTT όᅵٙVOUFTUBCMFDPEF
老舊 Web 上雲端 ͟MFHBDZDPEF˄̙ə ɪථ၌ࠇྌdϞࡈɽۃlll ʔҷ݅Ϟό
老舊 Web + 老舊機器 *5ɛ⨈ٙ Ѣྤ Linux www.iradiopop.com 2.6.26.8-57.fc8
#1 SMP Thu Dec 18 18:59:49 EST 2008 x86_64 x86_64 x86_6
S1 S2 LB Պۨٙ8FCݖ ̨-PBEJOH#BMBODFS ߰ʍࡈܝ၌4FSWFS Ѣྤ
S1 S2 LB Դ͜ඎ တ̈Ըࣛn Ѣྤ
S1 S2 LB ೌجਕeϥዚeஹʔɪeࠠක ᑋٙ-# ึኬΣᒔঐਗٙዚኜ
S1 S2 LB ೌجਕeϥዚeஹʔɪeࠠක ᑋٙ-# ึኬΣᒔঐਗٙዚኜ
S1 S2 LB Ѣྤ Ϥɗ $SBTIᔔᔔؐ ߮༻ٙ4ZT"ENJO
S1 S2 LB ථ၌ Դ͜ඎ တ̈Ըࣛn
S1 S2 LB ථ၌ S3 S4 ఱ̋һεዚኜᱍϞ፺ॆλ
S1 S2 LB ථ၌ ᄳΎᒛٙ8FCேϞ፬ج 4DBMF0VU 4DBMF*O ̥݊ࠢɽ፩Ԅλணࠇٙϓۜ TUJDLZTFTTJPO
ν؈ЫܘϞ፺
貴、順、爽 貴、順、爽 LB ̙˸൯ܘ൮ٙዚኜ
窮 窮 LB ̙݊ɭ ɓছٙʃʮ̡ ε̒͟ک֝ٙዚኜක༊
輕 Ꮸী ཫၑϞࠢd ൯ʔՑԑ1PXFSٙዚኜࣛ ࡡ͉Ҟٙή˙ᜊ࿔ə$16 ࿔ٙή˙ᜊҞə*0
Ꮸী request business logic db query
Ꮸী request business logic cache db query
Ꮸী request business logic cache db query ᔚዚኜٙ*0ˢථ၌ᒔ࿔d ה˸ࡡ͉࿔ٙᜊҞə
Ꮸী request business logic cache db query ᔚዚኜٙ$16ˢථ၌ᒔҞd ה˸ࡡ͉Ҟٙᜊ࿔ə for(…)
{ for(…) { for(…) { /* 很暴⼒力地過濾資料 */ } } }
Ꮸী request cache db query business logic ৎԸ݊ࡈ һ࠽Ҟ՟ٙ࿁ Active
Cache
ܠ༩ Active Cache request cache heavy business logic ϞҞ՟dఱ݊න
ܠ༩ Active Cache request expired cache heavy business logic ӚҞ՟dఱഃ
ഃܙ
ܠ༩ Active Cache request heavy business logic active cache ٝ༸νОһอІʉٙҞ՟
"DUJWF$BDIF ʔഃܙ
ెพ Active Cache Active Cache ༟ࣘཀಂۃ ࣛ d˴ਗࠠҴ༟ࣘ ତϞٙ-JCSBSZ HVBWB$BDIF-PBEFS
BUTMFHBDZDPEF˄ᗭҷd Ӕ֛˸ʔҷDPEFމͦᅺ
ెพ Active Cache Դ͜"01ౢɝ"EWJDF ᜫCVTJOFTTMPHJD˕౪"DUJWF$BDIF ਗ਼NFUIPEDBMMᔷϓDBDIFLFZ ൗ̅NFUIPEDBMMЇDBDIFSFGSFTITDIFEVMFS
active cache ెพ Active Cache request business logic KEY Cached
Refresh Scheduler business logic method call to cache key register key + method call to scheduler
active cache ెพ Active Cache request business logic Cached Refresh
Scheduler cache storage auto refresh business logic Դ͜٫Ցٙ CVTJOFTTMPHJD ॆ͍ٙ CVTJOFTTMPHJD
ెพ Active Cache "DUJWF$BDIF͉Ը݊މəಯˇഃܙࣛගணࠇ ׳ίථ၌ɪdܦ̷ಯˇə#VTZ+PCว༟๕ٙਪᕚ ͟DBDIFSFGSFTITDIFEVMFSࠢՓ-PBEJOH
ྼЪ Active Cache ٙ฿ׂܘᔊఊ Դ͜"01"EWJDFᘗ࿚NFUIPEDBMM ,&:NFUIPE BSHVNFOUT
ྼЪ Active Cache NFUIPE" VTFS*OGP TUS JOU NBQ PUIFS1PKP
LFZTJHOBUVSF@ BSHT<> BSHT<> BSHT<n> NFUIPE"@6TFS!BBBB@TUS@@\B C^@ NFUIPE"@VTFS@TUS@@\B C^@ ϞԬيUP4USJOHܝٙഐ؈ʔΥ͜d౬ϓՉ˼तᅄ˾ಁ
ྼЪ Active Cache ϞԬيdӚϞHFUUFSঐ՟तᅄl ͜"01ᘗ࿚ܔɿਞᅰdႡЪᗆй༟ࣘ NFUIPE# VTFS-JTU DPNQBSBUPS NFUIPE#@VTFS@VTFS@n@DPNQBSBUPS!BC
NFUIPE#@VTFS@VTFS@n@DNQ!4PSU#Z%BUF
ྼЪ Active Cache "DUJWF$BDIFνОٝ༸༈һอək ݊6TFSխ̣ٙఱΟ$BDIF ݊4DIFEVMFSխ̣ٙఱ3FGSFTI javax.servlet.http.HttpServlet.service(HttpServlet.java:641) stacktrace 看到 HttpServlet.service
就當他是 User 唄
Ⴣ˙ ආɝථ၌ࣛ˾d 8FC"QQԱᔚ݊τༀί4FSWFSɪٙ ࠅνОਕᕎዚג༰Ⴣٙ܄˒݊ࡈਪᕚ
Ⴣ˙ ܄˒௰ɽdШ܄˒ٙЗໄܘᏇ҄lll ڛזЬeڶᖯeΙܓeࡾʿen ᕎ7.ዚגܘჃd Шᕎ$%/&EHF-PDBUJPOӚԟჿჃf
Ⴣ˙ л͜$%/ෂਗ࿒༟ࣘdቇΥᔊఊٙ3&45'6-4FSWJDF request / response λჃ˅ྪჃ
Ⴣ˙ λჃ˅ྪჃ filter CDN )551 ࡡԸҢࡁவჿڐ request / response ਕٜՑ˰ޢٙး᎘
л͜$%/ෂਗ࿒༟ࣘdቇΥᔊఊٙ3&45'6-4FSWJDF DBDIFEVSM
Ⴣ˙ਕٜՑ˰ޢٙး᎘ νОԴ$BDIF&YQJSF $%/JOWBMJEBUJPOܘ࿔d౬༩ࢰܘҞ IUUQDEOUJNFXJOEPXUPLFOSDBDIFLFZ IUUQDEOUJNFXJOEPXUPLFOHDBDIFLFZ IUUQDEOUJNFXJOEPXUPLFOCDBDIFLFZ ⼩小⼼心安全問題,不要放敏感資料
$BDIF $%/ "DUJWF$BDIF ০࿁வϣਪᕚה፯ٙ˴ࠅ˙ج ྼ᜕ሯٙ˴ਗόҞ՟ ڢ੬ెพ ࠠอܠϽҞ՟ٙ࿁ၾഄଫ ਕٜՑ˰ޢٙး᎘ 2" ϼᔚ8FCɪථ၌