mopcon 2012 - 網路服務從 k 到 m
DESCRIPTION
TRANSCRIPT
網路服務從 K 到 M
畢瑄易 (ericpi)
KKBOX 南部研發中心
2
About Me – ericpi
• 曾任 北京天玩科技 技術經理
• 曾任 KKBOX 研發中心資深工程師
• KKBOX 南部研發中心經理
• 愛好 php & node.js
3
網路服務從 K 到 M?
K => Kbps, Kilo
M => Mbps, Mega/Million
4
電子票務 ?
沒量就沒錢
5
大家都想做五月天 15W 張票的生意
6
但 ... iBon 也爆了 ..
7
所以 , 我們來討論一個服務從小到大數量級的故事
8
以下故事純屬虛構 , 如有雷同
9
算你家的 ** 工程師 ** 倒楣
10
故事開始…
11
那些年 , 我們一起架的 LAMP
12
LAMP 好棒 ! 我要打十個 !
13
天字第一號 server 頂全場
14
幸福的日子 , day1, day2…dayN
15
有一天… 行銷辦了個人稍微多一點的活動
16
17
Performance Tunning!
httpd.conf
MaxClien
ts
query_cache_size
pthread
Javascript
HostnameLoo
kups
php.ini
KeepAlivemy.cnf
MinSpareServer
sMaxRequestPe
rChild
AcceptMutex
net.ipv4.tcp_rm
em
sysctl.conf
prefork
table_cache
apc
18
提高了 x00% 效率 , 但…
19
還是撐不住了… 冏
20
因為 , 這是個打群架的時代…
21
要是能 tune 出 1000% 效能 , 那表示有兩種可能…
22
1. 原來的架構 / 軟體太糟
23
2. 你家 server 叫葉問嗎 ?
24
講高服務量最愛談的
• Scalability
• High Availability
• High Performance
25
實際一點 , 人多勢眾
26
動態與靜態頁面拆分開
27
服務量應該比被圍毆狀況高很多 , 但…
28
總是又有那一天… 行銷辦了個人稍微多一點的活動
29
30
提高服務量必備
Cache
31
前端 Cache
32
資料 Cache
33
客戶端 Cache
34
但好日子總是不長…
35
36
我已經不想再講好日子不長的悲苦狀況
37
當前端服務量出狀況時 ?
剛剛不是說過人多勢眾
38
多重前端網站伺服器
39
當一台 DB 撐不住時 ?
MySQL 分散壓力方式
40
MySQL Replication
41
分離資料庫讀寫
42
多重 Data Cache 伺服器
43
Load Balance - Client Dispatch
44
Load Balancer
45
Real-time 的挑戰
46
還有呢 ?Message
Queue
CDN
DB Sharding
Distributed Storage
Task Queue
NoSQLDB Cluster
47
以上討論到的事情 , 不一定照順序發生
48
碰到狀況務必先 profile, 對症下藥
49
架構搞那麼複雜 , 難道產品還沒上線就要開始做?
50
有量才需要龐大架構 , 好的 ( 可維護性高 / 模組化 ) 系統 , 有助於未
來擴展
51
現在是 framework 比語言重要的時代 , 好 好利用 framework, 有助自己在轉換 /改善
infrastructure
52
IaaS/PaaS Cloud service, 請 愛用 Heroku/GAE/EC2 等服務
53
Cloud Service 對架構上的優點
• 省力 (不用搬機器 )
• 省時 (deploy快 )
• 爆量時 , 花錢就可以解決
54
CDN 、 Google API 等服務能用盡量用 , 在地球到處蓋機房 / 租雲端主機不一定
划算
55
祝福大家都能開發出需要煩惱數量級問題的服務
56
Thanks
57
工商服務一下
58
KKBOX 南部研發中心就在各位正下方 , 本棟 9F
59
而且我們持續徵募中iOS
Android
Mac OS
PHP Developer
QA Engineer
Web Front-
endWindows
60
前幾天才從 北海道 / 京都 /蘇美島 /澳洲 / 大阪 員工旅遊回
來 ...
61
62
63
除此之外 , 南部現在有MOPCON
(請鼓掌 )
還有 KSDG 、 Cocoaheads 、 MOSUT 、 KaLUG
等社群
64
所以 , 工程師們…
65
回來吧 , 孩子!
66
還有 !
67
老闆們!南下來設點吧!KKBOX 都來了 , 你還擔心什麼 ?
68
Thanks!& KKBOX 招募訊息
• 網址 :
http://www.kkbox.com/jobs
/
• 信箱 : [email protected]
• 電話 : 02-26557557 ext 106
or 167
69
感謝以下照片供應者以 cc 方式發佈
• http://www.flickr.com/photos/lazlo/8248173/
• http://www.flickr.com/photos/nickdoylephotos/549434793
0
/
• http://www.flickr.com/photos/7891209@N04/2951368555
/
• http://www.flickr.com/photos/government_press_office/64
59412681
/
• http://www.flickr.com/photos/mayhem/2939259129/
• http://www.flickr.com/photos/tastytouring/4338990521/