PHP Framework – Siapa yang tercepat?

Kali ini saya membandingkan enam PHP Framework berbasis MVC (Model View Controller) yang populer. Keenam framework itu adalah CakePHP, CodeIgniter, Kohana v2 dan v3, Yii, dan “new kid on the block” DooPHP. Semua menggunakan versi terbaru saat ini (2009-11-22) kecuali Yii. Berikut informasi detail mengenai versi yang di-test:
Cake PHP 1.2.5
Code Igniter 1.7.2
Kohana 2.3.4
Kohana 3.0.1.2
Yii 1.0.10
Doo 1.2

Mesin yang digunakan
Acer Aspire 4520
AMD Turion 64 X2 TL-58 1.9 GHz
RAM 3 GiB

Software yang digunakan
– Windows 7 Ultimate
Apache 2.2.12
PHP 5.3

Hampir semua framework konfigurasi-nya tidak diubah sama sekali (kondisi default). Kecuali Cake PHP yang sudah dimatikan konfigurasi session, cache, database, log, dan debug.

Metode test yang digunakan mencetak tulisan “Hello World!” lalu langsung exit;.

Hasil yang didapat adalah nilai rata-rata dalam satuan rps (request per second). Berikut dari yang terlambat hingga yang tercepat:

– CakePHP ==> 19.72 rps
– CodeIgniter ==> 71.23 rps
– Yii ==> 73.68 rps
– Kohana v2 ==> 76.31 rps
– Kohana v3 ==> 103.39 rps
– Doo ==> 200.32 rps

Terlihat Doo buatan negri tetangga adalah yang tercepat dalam test “Hello World!” ini.

Tapi dalam memilih suatu framework, bukan mana yang tercepat. Tapi yang paling nyaman anda gunakan sehingga mempersingkat waktu developing dan meningkatkan produktivitas anda.

Berikutnya akan ada tambahan dari PHP Framework berbasis MVC lainnya seperti Symfony, Zend Framework, dan APF, Solar Framework. Dan agar lebih fair, semua session, cache, database, dll akan di-non aktifkan. “Hello World!” juga akan dicetak pada view, bukan pada controller lalu exit.

Nb: Konfigurasi module dan extension yang sedang berjalan pada Apache dan PHP tidak diikutsertakan dalam tulisan ini.

Iklan

6 pemikiran pada “PHP Framework – Siapa yang tercepat?

  1. Kenapa ketika di test malah hampir semua fitur dimatikan. Gimana kalo keadaannya dibalik, yaitu dengan menghidupkan semua fitur ato fitur yang paling sering dipakai ketika proses development. Kan dalam praktek real-nya demikian…

    1. Yup… karena ini perbandingan untuk mencetak Hello World!, jadi cukup hanya sampai di controller. Jadi konfigurasi, class yang lain yang tidak penting tidak ikut di-load agar benar-benar terlihat performa/flow untuk mencapai controller.

      Memang ada rencana perbandingan dengan mematikan fitur tertentu, default, dan mengaktifkan semua. Sampai perbandingan cache, database, juga perbandingan ditampilkan dengan grafik. Tapi apa yang nak dikata. Waktu-nya mepet.

      Berikutnya saya akan coba benchmark lagi yang lebih fair dan lebih banyak “pesertanya”.

Tinggalkan Balasan

Please log in using one of these methods to post your comment:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s