More Related Content
ODP
Pukiwiki コメントスパム対策 / 電波時計で NTP PDF
PDF
Testing PHP extension on Travis CI PDF
PDF
ODP
PDF
Word pressのテーマは firephpでハックすれば 良かったのか PDF
What's hot
PDF
PDF
PDF
Javascriptを書きたくないヒ トのためのPythonScript PDF
PDF
Linux で写真を操作 - 写真の管理、現像、投稿 - PPTX
PDF
PDF
マウスを使わないでキーボードで快適に生活する方法(GNU Screen/tmux/byobu/awesome) PDF
久しぶりのPythonでgoogleのアレを制御してみた PDF
PPTX
PDF
PDF
PDF
PDF
PPTX
PDF
DevEnv Tryit.vim Phrase.vim PPTX
PPTX
PDF
Similar to PHP-FPMとuWSGI——mod_php以外の選択肢を探る
PPTX
EC2でNginxを使ってみよう JAWS大阪第9回勉強会資料 KEY
PPTX
PPTX
Webサーバ勉強会4 nginx で php-fpm を動かしてみた PDF
PDF
PPTX
PPTX
PDF
第1回 松本勉強会 2012 05 11 - 公開版 PPTX
Re: WebServer BenchMarking PDF
Word press on conoha このべん #3 PDF
PDF
PDF
PDF
PHP Now and Then 2012 at PHP Conference 2012, Tokyo Japan (in japanese) PDF
apachehereというPHPのBuiltin Serverっぽいやつをつくった PDF
PPTX
PDF
KEY
Apache 2.4 ChangeLog at 闇Webサーバ勉強会#5 More from Yoshio Hanawa
PDF
PDF
PHP7で変わること ——言語仕様とエンジンの改善ポイント PDF
PDF
OPcacheの新機能ファイルベースキャッシュの内部実装を読んでみた PDF
iOS/macOSとAndroid/Linuxのサンドボックス機構について調べた PDF
PDF
realpathキャッシュと OPcacheの面倒すぎる関係 PDF
PDF
PPTX
PDF
PDF
PDF
PDF
PDF
PDF
PDF
PDF
PDF
PDF
家庭用ブロードバンドルータ上でWordPressを動かそう PHP-FPMとuWSGI——mod_php以外の選択肢を探る
- 1.
PHP-FPMとuWSGI
̶̶ mod_php以外の選択肢を探る
hnw
第66回PHP勉強会(2013/03/27) 発表資料
13年3月29日金曜日
- 2.
自己紹介
@hnw / id:hnw
勤務先:KLab株式会社
カレーとバグが大好物
宣伝:php-timecopというPHP拡張を作りました
https://github.com/hnw/php-timecop
13年3月29日金曜日
- 3.
今日おはなしすること
PHP環境の選択肢を紹介
PHP-FPM
uWSGI + PHP plugin
動かしてみたよ!
メリット・デメリットは?
13年3月29日金曜日
- 4.
PHP-FPM
FPM: FastCGI Process Manager
PHP標準のアプリケーションサーバ実装
PHP 5.3.3からバンドル
PHP 5.4.0から公式サポート
プロトコルはFastCGI
13年3月29日金曜日
- 5.
FastCGI
Webサーバ・APサーバ間で使われるプロトコル
Apache・nginx・lighttpdなどがサポート
PHP以外の言語ではボチボチ利用される
バイナリプロトコル
13年3月29日金曜日
- 6.
uWSGI
Pythonでボチボチ使われているAPサーバ実装
多数の言語に対応(WSGI, PSGI, Rack, ...)
embed SAPIを利用したPHPプラグインも提供
PHP界隈での知名度はゼロに近い
13年3月29日金曜日
- 7.
- 8.
- 9.
- 10.
ミドルウェア構成
対称性からApache+mod_phpの前段にもnginxを入れた
HTTP HTTP
nginx nginx
HTTP FastCGI
Apache
PHP-FPM
mod_php
13年3月29日金曜日
- 11.
前段のnginxいらなくね?
効用
前段のnginxの同時接続数を大きくできる
後段のAPサーバの同時接続数は下げられる
APサーバだけロードバランシングすることも可能
前段をApacheにしても同じ効果が得られる
13年3月29日金曜日
- 12.
速度の比較
有意な差は出なかった
1並列で500μs程度
10ms台のPHPを動かすなら誤差では?
13年3月29日金曜日
- 13.
メモリ消費量
起動直後にPHPを叩いてpsコマンドのRSSの値を比較
PHP-FPM : 3MB
Apache + mod_php : 5MB
uWSGI + PHP plugin : 6.5MB
Apacheはチューニングの余地があるはず
13年3月29日金曜日
- 14.
ここまでのまとめ
PHP-FPM、uWSGI + PHP pluginともに正常動作する
速度の差はほぼ無い
1プロセスあたりのメモリ消費量の差も誤差に近い
商用環境で試す人、追試をお願いします
13年3月29日金曜日
- 15.
PHP-FPMのメリット
PHP公式サポートされていること
安定性が期待できる
ロングサポートが期待できる
乗っかって後悔する可能性が少なそう
13年3月29日金曜日
- 16.
PHP-FPMの面白機能(1)
slow_logが出せる
n秒以上かかるアクセスを検出
n秒時点でのbacktraceも取れる
(この機能だけはrootで起動する必要あり)
13年3月29日金曜日
- 17.
PHP-FPMの面白機能(2)
暇なときにプロセス数を勝手に減らす機能
「pm = ondemand」
10秒程度アクセスが無いと子プロセスが0個になってる
13年3月29日金曜日
- 18.
PHP-FPMの面白機能(3)
fastcgi_finish_request()
レスポンスを返した後、PHPの処理が継続できる
APCが狂ったときに緊急再起動する機能
動作は未確認、期待通りに動くなら面白いかも
13年3月29日金曜日
- 19.
- 20.
まとめ
PHP-FPMは「普通」に使える実装
性能・安定性など特に不安点は無い
Apache + mod_phpより気軽に試せるのは利点
uWSGIでもPHPが動くよ!
普通はPHP-FPMを選ぶ気がします…
13年3月29日金曜日
- 21.
ご静聴
ありがとう
ございました
13年3月29日金曜日