SymfonyとLaravelでは果たしてどちらが軽量高速なのか?

Symfony 2.5.0とLaravel 4.2.1をベンチマークしてみました。

ベンチマーク環境

  • 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/symf/hello?name=BEAR

ベンチマーク結果

Symfony Laravel
trans/sec 193.82 175.79
relative(%) 100.0% 90.7%

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

Symfony Laravel
peak memory (MB) 1.00 1.25
relative(%) 100.0% 125.0%

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

コメント

「軽量」を使用メモリが少ないこと、「高速」を処理速度が速いことと定義した場合、このベンチマークでは、軽量なのはSymfonyであり、高速なのもSymfonyでした。それほど大きな差はありませんが。

漠然とLaravelの方が軽量高速だろうと思っていましたが、先入観というのはよくないですね。

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

ソースコード

関連

Date: 2014/06/11

Tags: php, symfony, laravel, benchmark