サバフェスに
参加してきました
@snicker_jp
元うなぎ屋
最初に!
 サバフェス事務局の方
 参加の皆さん!

期間中

お疲れ様でした!
言い訳を・・・(´・ω・`)
 終わった後に見た、参加者の

ブログがすごすぎてLT

申し込んだの後悔した・・・

 自分のブログ

更新

できなくなった・・・(´・ω・`)
そんな中・・・
事務局から・・・
------------------------------------ どんな構成だったか
 今回のポイントは
どこだったか
------------------------------------もうちょっと早く言って~!
サバフェスとは?
 サバフェスは、エンジニアの技術を競い、シェアするコンテ
ストイベントです。
 クラウド環境でスケールアウトとチューニングを駆使し、
WordPressのパフォーマンスを極限まで高めていきます。

WordPressに一切手を加えずに、
どこまで高速化できるのか!?を競うイベント
参考:
http://serverfesta.info/?page_id=5
なぜ、参加を?
 中の人に
Technology
 Apache HTTP Server
 PHP 5.5
 MySQL 5.5(MyISAM, InnoDB)
 Nginx
 php-fpm
 Varnish Cache
 LVS(keepalived)
 Direct Server Return(LVSの構成)

 tcpdump
 tcpreplay
 ngx_cache_purge(Nginx Cache Purge Plugin)
 CentOS 6
 WordPress
 tmpfs
Topics
 tmpfs
(MySQL, /var/run, /var/lock/subsys, /home/csf【WordPress】の
置き場)
 Varnish
 LVS -> NG
 Nginx + gzip
Gen
Revision 1
 Apache + PHP 5.5 + other MySQL

Score
GET 54
POST 1,200
Gen
Revision 2
 Varnish + (Apache + PHP 5.5) + MySQL
Revision 2.9
 Varnish[malloc] + (Apache + PHP 5.5) + MySQL

Score
GET 39,000
POST 1,200

Varnish ヤベー!
∑(゚ω゚ノ)ノ
Gen
Revision 3
 Varnish + (Apache + PHP 5.5 + MySQL)
Revision 4
 LVS + Varnish + (Apache + PHP 5.5 + MySQL)
Revision 5
 LVS + Varnish + (Nginx + php-fpm + PHP 5.5) + MySQL

Score
GET 43,000
POST 1,188

Nginx ヤベー!
∑(゚ω゚ノ)ノ
Gen
Revision 3
 Varnish + (Apache + PHP 5.5 + MySQL)
Revision 4
 LVS + Varnish + (Apache + PHP 5.5 + MySQL)
Revision 5
 LVS + Varnish + (Nginx + php-fpm + PHP 5.5) + MySQL

Score
GET 43,000
POST 1,188

Varnish+Nginx
ヤベー!
∑(゚ω゚ノ)ノ
Gen
Revision 6
 LVS(Varnish + Nginx + php-fpm[static, max_child 250] + PHP 5.5 ) + (Varnish + Nginx
+ php-fpm[static, max_child 500] + PHP 5.5 )*2 + MySQL
Day6
Day6
Score GET 39,000 POST 4,700

Score GET 39,000 POST 4,700

Revision 6.1
 LVS(Varnish
+ Nginx[Cache]
+ php-fpm[static, max_child 250] + PHP 5.5 )
+ Nginx[Cache] + php-fpm[static, max_child 250] + PHP 5.5 )*3
+ MySQL(Disk Split)
Day7
Day7
Score GET 29,000 POST 15,000
Score GET 29,000 POST 15,000
Revision 7
 Varnish + (Varnish + Nginx + php-fpm[static, max_child 500] + PHP 5.5 )*3 + MySQL
Revision 7.5 Final
 Varnish + (Varnish + Nginx[gzip] + php-fpm[static, max_child 500] + PHP 5.5 )*3 +
MySQL[tmpfs]
Last Gen
Revision 7
 Varnish + (Varnish + Nginx + php-fpm[static, max_child 500] + PHP 5.5 )*3 + MySQL

Revision 7.5 Final
 Varnish
+ (Varnish + Nginx[gzip] + php-fpm[static, max_child 500] + PHP 5.5 )*3
+ MySQL[tmpfs]

Score
GET 43,000
POST 1,188

LVS
さようなら
m(_ _)m
Last Gen
サーバー構成案

・「読み込み」はほぼキャッシュで返す
Appサーバーへのアクセス最小限
・「書き込み」はMySQLのチューニング、tmpfs
など

NW層

既存ルーター(IDCF提供)
Firewall設定

LB層

LVS使う?
DSR(Direct Server Return)にしたい!

Cache層

Varnish x2 構成

App,DB層

台数 1 or 2(必要なら)
App,DB同一サーバー内
Web:Apache or Nginx(UNIX Socket)
DB:MySQL(ストレージエンジン検討)
実際のサーバー構成

NW層

LB,Cache
層

Cache,App
層

DB層

・「読み込み」はほぼキャッシュで返す
Appサーバーへのアクセス最小限
・「書き込み」はMySQLのチューニング、tmpfs
など

既存ルーター(IDCF提供)
Firewall設定
す、すみません!(><)

台数 1
Reverse Proxy

台数 3
Varnish
Nginx

台数 1
DB:MySQL(MyISAM、InnoDB),tmpfs
まとめ
 いい経験になりました!

 たぶん順位はふるっていないと思います。
 Varnish、Nginx、php-fpmなど普段使わないプロダクトの勉強に
なりました!

コンテスト駆動勉強!
 ありがとうございました!

サバフェスLT(元うなぎ屋)