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
GAE 也沒那麼糟糕
Search
CQD
December 06, 2012
Programming
0
88
GAE 也沒那麼糟糕
好像一瞬間很多人吐嘈 GAE,平反一下...
CQD
December 06, 2012
Tweet
Share
More Decks by CQD
See All by CQD
開放原始碼的商業遊戲範例
cqd
1
160
Other Decks in Programming
See All in Programming
Netty Chicago Java User Group 2024-04-17
sullis
0
180
try! Swift Tokyo 2024 参加報告 / try! Swift Tokyo 2024 Report
hironytic
0
210
Scalable Customer Journey Orchestration (CJO)
lewuathe
0
340
PHP8.3の機能を振り返る / Review of PHP 8.3 features
seike460
PRO
1
110
新宿ダンジョンを可視化してみた
satoshi7190
2
270
Ruby Pattern Matching
bkuhlmann
0
930
サイコロで理解する統計的仮説検定の考え方
tatamiya
4
950
Random\Randomizer クラスで日常のあれこれを解決しよう! / Random\Randomizer class solves familiar trouble
cocoeyes02
0
250
コーンフレークから始める モデリング会話入門
ogurotakayuki
0
380
TYPO3 v13 – The road to LTS: What's new and new APIs
luisasofie_xoxo
0
210
SwiftUIで使いやすいToastの作り方 / How to build a Toast system which is easy to use in SwiftUI
lovee
3
150
はてなにおける CSS Modules、及び CSS Modules に足りないもの / CSS Modules in Hatena, and CSS Modules missing parts
mizdra
7
940
Featured
See All Featured
We Have a Design System, Now What?
morganepeng
43
6.8k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
226
51k
What's new in Ruby 2.0
geeforr
337
31k
Put a Button on it: Removing Barriers to Going Fast.
kastner
58
3.1k
Fontdeck: Realign not Redesign
paulrobertlloyd
76
4.9k
Designing Experiences People Love
moore
136
23k
Imperfection Machines: The Place of Print at Facebook
scottboms
260
12k
YesSQL, Process and Tooling at Scale
rocio
164
13k
Fashionably flexible responsive web design (full day workshop)
malarkey
398
65k
Clear Off the Table
cherdarchuk
84
310k
Testing 201, or: Great Expectations
jmmastey
28
6.4k
How To Stay Up To Date on Web Technology
chriscoyier
782
250k
Transcript
GAE 也沒那麼糟糕
Google App Engine
OSDC 2012 對 GAE 怨念很深
None
None
None
不過我⽤用 GAE 的經驗 還沒那麼糟
- 有⼀一堆愚蠢的測驗 - 輸⼊入名字跳出蠢結果 - 可以⾃自製新測驗
- 有⼀一堆愚蠢的測驗 - 輸⼊入名字跳出蠢結果 - 可以⾃自製新測驗 算 Hash 當 Key
從數個陣列裡⾯面撈字串
撈測驗資料 名字算 HASH 組合結果字串 記錄測驗執⾏行次數 回傳 JSON
最⼤大流量 • 20 萬次結果 • 80 萬 req • 11
萬獨⽴立訪客 • 3GB/day • ~80 req/sec • 1.5 萬獨⽴立訪客/hr • ~80KB/sec
最⼤大流量 • 20 萬次結果 • 80 萬 req • 11
萬獨⽴立訪客 • 3GB/day • ~80 req/sec • 1.5 萬獨⽴立訪客/hr • ~80KB/sec 出帳的費⽤用是 0.26 美⾦金 不過還是要付低消 2.1$/week
我在意的點 • Datastore 存取 • Bandwidth • Instance Hour •
Other API usage
⼀一些想法
Cache
Cache Everything
撈測驗資料 名字算 HASH 組合結果字串 記錄測驗執⾏行次數 回傳 JSON Datastore Datastore
撈測驗資料 名字算 HASH 組合結果字串 記錄測驗執⾏行次數 回傳 JSON Datastore Datastore Memcache
撈測驗資料 名字算 HASH 組合結果字串 記錄測驗執⾏行次數 回傳 JSON Datastore Datastore Memcache
Staged in memory
撈測驗資料 名字算 HASH 組合結果字串 記錄測驗執⾏行次數 回傳 JSON Datastore Datastore Memcache
Staged in memory
• 節省 Datastore 操作 • 更快的 response time • 對「被瘋狂轉載的連結」有抵抗⼒力
• Cache 所有的 datastore query? • Objectify? • 預先載⼊入到 Memory?
• Local variable vs Memcache
Javascript
HTML vs AJAX 2.5KB vs 150Byte
Minify helps bandwidth with no price
<threadsafe>
None
Request is free Channel 好貴,polling 吧
結論
要多花點時間 但也沒那麼難搞
GAE 也沒那麼糟糕