sitetag 系統窮人調校法經驗談
DESCRIPTION
PHPConf 2013 - SiteTag 系統窮人調校法經驗談TRANSCRIPT
Who amI
WorkSiteTag
I can do ....
Big Data巨量資料
?
BigData
??
巨量資料
???
想聽什麼
不知道該講什麼
資料不同
處理方式不同
被打臉Big data別再濫用
So...
別管大資料了
小資料整理
SiteTag 資料應用
解決流量、備份
問題
窮人系統架構
SiteTag
SiteTag 主站
Yahoo! Adsense
Feebee 飛比價格
SiteTag 系統架構
簡介
What is
SiteTag
小資料整理
網站標籤自動產生器
演算法產生標籤雲
標籤雲認識網站
網站外掛
工具
機器
Apache
1
MySQL2
問題
➢ Request➢ 資料備份 (寫入 )
Request多
所有網站
PV加總
備份
Replication
追不上MySQL InnoDB Replication Slave 太慢 跟不上解法
附加條件
網站外掛
工具
網站外掛?
回應快
Connection
多
重點
Server可以掛
網站外掛必須活著
Question
?
架構規劃
➢ Request➢ 資料備份
資料 +備份快速回應
分析
DB 資料分類➢ 急迫➢ 不急
DB Table➢ User 急➢ Tag 不急
DB Table➢ User ??萬➢ Tag ??億
拆
讀寫分離
➢ U / T Table ➢ User DB➢ Tag DB
備份 ?
Tag / User
損毀 ?
Backup暫頂
Question
?
➢ Request➢ 資料備份
Request太多
需求
➢ 連線多➢ 回應快➢ 不能掛
Browser Web Site
JavaScript Server API
➢ 靜態➢ 動態
靜態
JavaScript
application/javascript
ExpiresDefault A86400000000
?
X
網站外掛
工具
JS 修改叫站長更新 ?
拔掉
找專業的 ...
CDN
➢ 連線多➢ 回應快➢ 不能掛
靜態收工
Question
?
動態
快
網站外掛
?
即時計算VS
快
快
Cache
Cache
演進
APCAlternative PHP Cache
includerequire
apc_store()apc_fetch()
APCConfiguration
apc.shm_size = 30apc.ttl = 0apc.gc_ttl = 3600apc.enable_cli = 0
問題
Apacherestart
RAM
爆炸
RAM+++++
MySQLCache
MyISAM快
CREATE TABLE `cache` (
`id` char(32) NOT NULL,`data` text,`expire` datetime NOT NULL,
PRIMARY KEY (`id`)) ENGINE=MyISAM DEFAULT CHARSET=utf8;
QPS4000+
注意
MyISAM容易壞
回應速度
堪用
Cache收工
動態➢ 連線多➢ 回應快➢ 不能掛
分析
動態➢ 即時更新➢ 1天更新一次
拆
即時更新
GAEGoogle App Engine
1天更新 1次
Cache頂
動態收工 ?
➢ 連線多➢ 回應快➢ 不能掛
連線多+
MySQL 滿載
掛
分析
網站外掛
設計
Browser Web Site
JavaScript Server API
JavaScript呼叫 API
APIhttp://api...../?參數=abc
Keyhttp://api...../?參數=abc
ValueCache
CDN?
CDN Cache清除 ?
Purge
KeyValuePurge
分散式架構
NoSQL?
需備援DB的
NoSQL
➢ 連線多➢ 回應快➢ 不能掛
CDN||
API + DB
Browser Web Site
JavaScript Server API
CDN
動態➢ 即時 - GAE➢ 1天更新 - CDN
➢ 連線多➢ 回應快➢ 不能掛
動態收工
Question
?
➢ Request➢ 資料備份
SiteTag 收工
Yahoo! Adsense
讀計分離
Feebee 飛比價格