あくなき速さへの追及
そもそも速さを求めるならPHPを使うなって話なんですけどね。
実際開発の現場で使われる「速さ」の定義って
作られたシステムの「処理速度」の部分と
システムを作り上げるまでの「開発工数」の部分があると思うのです。
PHPは前者がとにかく遅い
と言われてしまうわけです。
ただここには落とし穴があって
Apacheのモジュールとして動かすわけです。
システムの規模によっては
WEBサーバーからcgi実行して返り値を受け取ってクライアントへ返すより速かったりします。
普通に考えたらWEBからのアクセスの処理遅延でダウンするようなシステム構成ってあまり考えられないんですけどね。
たぶんそれは言語のせいよりはDBの重さの方がボトルネックになっている可能性が高いわけで・・・。
そうは言っても
やっぱりバッチ実行とか簡単なツール作成とか
何かとWEBクライアント以外の部分での処理速度を求められるわけで
最近色々調べております。
こんなことをやり始めたのも
出向先の会社さんで「処理速度王選手権」的なものをした時に
6つぐらいの言語から1つを選択してプログラムの改修をして~
みたいなことをしたわけです。
制限時間はわずか30分。
まあ300行ぐらいの小さなプログラムだったので処理を読み込むのにはそこまで時間はかからなかったわけですが
どうやっても1万x1万のループが発生していたんです。
他の言語はデフォルト状態でだいたい300秒ぐらいかかっていたんですが
PHPだけデフォルトのスクリプトが2000秒オーバーっていう状態wwww
直しても直しても実行のレスポンスが返ってこないっていう・・・
残念でなりません。
そんなこんながあり
先日「PhalconPHP」を試してみました。
さくらVPSのCentOS6にインストールしましたが
ほぼリファレンス通りでいけました。
途中「phpizeが無いよ!」みたいなエラーが出ましたが
これで解決!
php-develの依存モジュールにphpizeが含まれているみたいです。
構成の汎用性の高さから
初期構築に色々悩んでしまう面もありますが
悩んだら「デベロッパーツール」を使ってサクッと初期構築してみるのをおススメします。
そんなこんなで
知り合いのエンジニアさんがPhalconの勉強会で使っていた資料を引用してみます。