• Like
  • Save
PHP-FPMとuWSGI——mod_php以外の選択肢を探る
Upcoming SlideShare
Loading in...5
×
 

PHP-FPMとuWSGI——mod_php以外の選択肢を探る

on

  • 10,488 views

 

Statistics

Views

Total Views
10,488
Views on SlideShare
4,461
Embed Views
6,027

Actions

Likes
16
Downloads
18
Comments
0

10 Embeds 6,027

http://d.hatena.ne.jp 5985
http://localhost 17
http://webcache.googleusercontent.com 7
https://twitter.com 5
http://192.168.1.110 4
http://www.google.co.jp 4
http://digg.com 2
http://reader.freerss.net 1
https://www.google.co.jp 1
https://hashtagsjp.appspot.com 1
More...

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    PHP-FPMとuWSGI——mod_php以外の選択肢を探る PHP-FPMとuWSGI——mod_php以外の選択肢を探る Presentation Transcript

    • PHP-FPMとuWSGI ̶̶ mod_php以外の選択肢を探る hnw 第66回PHP勉強会(2013/03/27) 発表資料13年3月29日金曜日
    • 自己紹介 @hnw / id:hnw 勤務先:KLab株式会社 カレーとバグが大好物 宣伝:php-timecopというPHP拡張を作りました https://github.com/hnw/php-timecop13年3月29日金曜日
    • 今日おはなしすること PHP環境の選択肢を紹介 PHP-FPM uWSGI + PHP plugin 動かしてみたよ! メリット・デメリットは?13年3月29日金曜日
    • PHP-FPM FPM: FastCGI Process Manager PHP標準のアプリケーションサーバ実装 PHP 5.3.3からバンドル PHP 5.4.0から公式サポート プロトコルはFastCGI13年3月29日金曜日
    • FastCGI Webサーバ・APサーバ間で使われるプロトコル Apache・nginx・lighttpdなどがサポート PHP以外の言語ではボチボチ利用される バイナリプロトコル13年3月29日金曜日
    • uWSGI Pythonでボチボチ使われているAPサーバ実装 多数の言語に対応(WSGI, PSGI, Rack, ...) embed SAPIを利用したPHPプラグインも提供 PHP界隈での知名度はゼロに近い13年3月29日金曜日
    • 動かしてみた(1) PHP-FPM13年3月29日金曜日
    • 動かしてみた(2) uWSGI + PHP plugin13年3月29日金曜日
    • 動かしてみた(3) Apache + mod_php13年3月29日金曜日
    • ミドルウェア構成 対称性からApache+mod_phpの前段にもnginxを入れた HTTP HTTP nginx nginx HTTP FastCGI Apache PHP-FPM mod_php13年3月29日金曜日
    • 前段のnginxいらなくね? 効用 前段のnginxの同時接続数を大きくできる 後段のAPサーバの同時接続数は下げられる APサーバだけロードバランシングすることも可能 前段をApacheにしても同じ効果が得られる13年3月29日金曜日
    • 速度の比較 有意な差は出なかった 1並列で500μs程度 10ms台のPHPを動かすなら誤差では?13年3月29日金曜日
    • メモリ消費量 起動直後にPHPを叩いてpsコマンドのRSSの値を比較 PHP-FPM : 3MB Apache + mod_php : 5MB uWSGI + PHP plugin : 6.5MB Apacheはチューニングの余地があるはず13年3月29日金曜日
    • ここまでのまとめ PHP-FPM、uWSGI + PHP pluginともに正常動作する 速度の差はほぼ無い 1プロセスあたりのメモリ消費量の差も誤差に近い 商用環境で試す人、追試をお願いします13年3月29日金曜日
    • PHP-FPMのメリット PHP公式サポートされていること 安定性が期待できる ロングサポートが期待できる 乗っかって後悔する可能性が少なそう13年3月29日金曜日
    • PHP-FPMの面白機能(1) slow_logが出せる n秒以上かかるアクセスを検出 n秒時点でのbacktraceも取れる (この機能だけはrootで起動する必要あり)13年3月29日金曜日
    • PHP-FPMの面白機能(2) 暇なときにプロセス数を勝手に減らす機能 「pm = ondemand」 10秒程度アクセスが無いと子プロセスが0個になってる13年3月29日金曜日
    • PHP-FPMの面白機能(3) fastcgi_finish_request() レスポンスを返した後、PHPの処理が継続できる APCが狂ったときに緊急再起動する機能 動作は未確認、期待通りに動くなら面白いかも13年3月29日金曜日
    • PHP-FPMのデメリット 実績が少ない 監視系はHTTPの方が既存資産が生かせそう13年3月29日金曜日
    • まとめ PHP-FPMは「普通」に使える実装 性能・安定性など特に不安点は無い Apache + mod_phpより気軽に試せるのは利点 uWSGIでもPHPが動くよ! 普通はPHP-FPMを選ぶ気がします…13年3月29日金曜日
    • ご静聴 ありがとう ございました13年3月29日金曜日