CodeIgniter、Kohana、FuelPHP のパフォーマンス比較
cakephper さんの 色々なPHPフレームワークのパフォーマンスを比較 でのサンプルブログを以下のフレームワークで実装しました。
- CodeIgniter 2.1.0-dev http://codeigniter.com/
- Kohana 3.2.0 http://kohanaframework.org/
- FuelPHP 1.1-rc1 http://fuelphp.com/
CodeIgniter は開発中の 2.1.0-dev を用い、cakephper さんのサンプルに記事が存在するかどうかのチェックと表示の際のエスケープ処理を追加し、データベースアクセスは query() メソッドに変更しました。
Kohana、FuelPHP の実装は CodeIgniter での実装に合わせてあり、Query Builder (CodeIgniter で言うところの Active Record) や ORM は使っていません。
ベンチマーク方法
以下のようなコマンドで計測。
$ siege -b -c 10 -t 3S http://localhost/ci-2.1.0-dev-blog-benchmark/index.php/blog/view/1
ベンチマーク環境
ベンチマーク結果
ブログの記事を MySQL から 1件取得して表示するというものですが、ベンチマーク結果は大差ありませんでした。
CI 2.1.0-dev | Kohana 3.2.0 | FuelPHP 1.1-rc1 |
---|---|---|
83.138 trans/sec | 80.27 | 80.029 |
また、参考のため「Hello World!」のみの表示のベンチマークも取得しました。こちらは、明らかに CodeIgniter > Kohana > FuelPHP という順でした。
CI 2.1.0-dev | Kohana 3.2.0 | FuelPHP 1.1-rc1 |
---|---|---|
148.056 trans/sec | 127.668 | 104.658 |
ソースコード
- CodeIgniter 2.1.0-dev https://bitbucket.org/kenjis/ci-2.1.0-dev-blog-benchmark
- Kohana 3.2.0 https://bitbucket.org/kenjis/kohana-3.2.0-blog-benchmark
- FuelPHP 1.1-rc1 https://bitbucket.org/kenjis/fuel-1.1-rc1-blog-benchmark