今サービス中の別件の案件。
小生が、かなりメモリ使用量に気を遣って書いた箇所は、160request /s出ているらしい。
よく判らないが、検索してみると、これって速いほうですね。
apache+mod_phpのオーソドックスな構成。
ハード構成を言えって?それはここで論じたいネタではないので割愛。
「PHPで性能が出ない!」とお悩みの人を色々検索してみると、
最も典型的なのが「WordPressが」とか。
http://kray.jp/blog/wordpress-tuning/
http://stackoverflow.com/questions/8853692/php-is-slower-than-it-should-be
「性能が出ない」でお困りの皆さん。これらの共通点は、超大作フレームワークの利用。これに尽きます。案件にもよりけりでしょうが、昨今では、
なんて手法もアリでしょう。
メイン関数を5行で書けます!という触れ込みで、実はincludeの向こうは5万行を毎回ロードしてますとか。特定のフレームワークの話はしてません。ものの例え、でもそれがPHPフレームワークの本質です。
JAVAであれば、悪い発想ではない。メモリに常駐しまくりなんで。故にスタートアップに10秒かかるとしても。それを「言語仕様がJAVAに似てるだけ」のPHPが真似しよう、ってのがそもそもの間違い。
逆に「クラウドじゃないので、湯水の様には増やせません」と言うなら2択です。
何故って?
早い話が、どうしてもPHPを使いたければ、
そんなの書いてられないよって?当たり前です。要するにPHPを使うなって、ことです。
小生が、かなりメモリ使用量に気を遣って書いた箇所は、160request /s出ているらしい。
よく判らないが、検索してみると、これって速いほうですね。
apache+mod_phpのオーソドックスな構成。
ハード構成を言えって?それはここで論じたいネタではないので割愛。
「PHPで性能が出ない!」とお悩みの人を色々検索してみると、
最も典型的なのが「WordPressが」とか。
http://kray.jp/blog/wordpress-tuning/
http://stackoverflow.com/questions/8853692/php-is-slower-than-it-should-be
「性能が出ない」でお困りの皆さん。これらの共通点は、超大作フレームワークの利用。これに尽きます。案件にもよりけりでしょうが、昨今では、
- とりあえずフレームワークを使って
- 短期間で仕上げて
- 性能面はクラウドでどうにかする
なんて手法もアリでしょう。
メイン関数を5行で書けます!という触れ込みで、実はincludeの向こうは5万行を毎回ロードしてますとか。特定のフレームワークの話はしてません。ものの例え、でもそれがPHPフレームワークの本質です。
JAVAであれば、悪い発想ではない。メモリに常駐しまくりなんで。故にスタートアップに10秒かかるとしても。それを「言語仕様がJAVAに似てるだけ」のPHPが真似しよう、ってのがそもそもの間違い。
逆に「クラウドじゃないので、湯水の様には増やせません」と言うなら2択です。
- PHPを辞めるか
- フレームワークを辞めるか(裸のPHPで書けと)
何故って?
- 「フレームワーク」は、大量のファイルをincludeし、動的コンパイルを繰り返す。
- 故に、メモリに常駐しないPHPとは、非常に相性が悪い。
- ちなみに、adobe AMF frameworkは、3Mb食います。
- APC等で解決するのは、「コンパイルに要するCPUパワー」だけ
- 実は、PHPの動的コンパイル速度は、かなり速い。
早い話が、どうしてもPHPを使いたければ、
- 裸のPHPで
- 総実行300行未満で
- メモリ使用量は、標準の8Mbから更に減らして1Mbぐらいでやりくり
そんなの書いてられないよって?当たり前です。要するにPHPを使うなって、ことです。