2014年の最新PHPフレームワークをベンチマークしてみる

CodeIgniter 3.0-dev、FuelPHP 1.7.2-dev、CakePHP 3.0.0-dev3、BEAR.Sunday 0.10.5、Laravel 4.2.1の5つの最新PHPフレームワークをベンチマークしてみました。

(2015-03-26 追記) 9つのフレームワークをベンチマークした「2015年最新PHPフレームワーク(9つ)のベンチマーク」をアップしました。

(2014-11-27 追記) 7つのフレームワークをベンチマークした「2014年の最新PHPフレームワークをベンチマークしてみた」をアップしました。

なお、Symfony、Zend Framework、Phalcon、Yii、Auraなども入れたいところですが、力尽きました。あしからず、ご了承願います。

ベンチマーク環境

  • XAMPP 1.8.3-4 for Linux (32bit)
    • PHP 5.5.11
      • Zend OPcache v7.0.4-dev
    • Apache 2.4.9

ベンチマーク方法

いわゆる「Hello World」ベンチマークです。フレームワークの最小のオーバーヘッドを計測するためのものになります。詳細はソースコード(後述)をご覧ください。

以下のようなコマンドで計測しました。

$ siege -b -c 10 -t 3S http://localhost/bear/hello?name=BEAR

ベンチマーク結果

CodeIgniter FuelPHP CakePHP BEAR.Sunday Laravel
trans/sec 881.53 396.08 418.03 268.62 173.07
relative(%) 100.0% 44.9% 47.4% 30.5% 19.6%

1秒間に処理できたリクエスト数です。多い方がよい値です。

CodeIgniter FuelPHP CakePHP BEAR.Sunday Laravel
peak memory (MB) 0.25 0.5 0.5 0.75 1.25
relative(%) 100.0% 200.0% 200.0% 300.0% 500.0%

memory_get_peak_usage(true)で取得したピーク時のメモリ使用量です。

コメント

この中では、やはりCodeIgniter3が速かったです。OPcacheをonにしたら、このように圧倒的に速くなりました。恐るべし、CodeIgniter!

また、CakePHP3がFuelPHP 1.xよりも少しだけ速かったことに驚きました。OPcacheをoffにすれば、FuelPHPの方が速かったのですが。

なお、もし、このようにチューニングしたほうがよいということがありましたら、BitbucketのIssuesやPull Requestでお知らせいただければ、適用して再度計測してみます。

ソースコード

関連

Date: 2014/06/10

Tags: php, fuelphp, codeigniter, bear, cakephp, laravel, benchmark