apc vs eaccelerator vs xcache

105

Saya sedang melakukan penelitian tentang yang mana yang akan digunakan dan saya tidak dapat menemukan yang menonjol. Eaccelerator lebih cepat dari APC , tetapi APC lebih baik dipertahankan. Xcache lebih cepat tetapi yang lain memiliki sintaks yang lebih mudah.

Ada yang punya rekomendasi untuk digunakan dan mengapa?

Galen
sumber
1
eAccelerator sepertinya belum dirilis selama lebih dari setahun. VC xcache sudah pasti aktif, tetapi saya juga tidak bisa memfokuskan rilis dan fokus. Semuanya bermuara pada perangkat lunak yang dipelihara dan APC memenangkannya.
Hingga
11
Saat itu Q3 2011. Apakah banyak hal berubah sejak 2009?
john

Jawaban:

110

APC akan disertakan dalam PHP 6, dan saya rasa itu telah dipilih karena alasan yang bagus :)

Ini cukup mudah untuk menginstal dan tentu saja mempercepat.

David Snabel-Caunt
sumber
Saya telah menimbang ketiganya dan telah memutuskan untuk memulai pengujian dengan APC karena alasan ini. Dua lainnya tampaknya memiliki beberapa masalah stabilitas juga.
Steve Claridge
46
Saya hanya mengalami tiga masalah dengan APC, yang semuanya berada di bawah kendali saya. 1) Jangan biarkan APC terisi. Pastikan untuk mengalokasikan memori yang cukup 2) Jangan gunakan apc_clear_cache () pada server aktif 3) APC tidak benar-benar mengatasi pertengkaran kunci yang berat - jangan mencoba menulis ke satu kunci dari banyak proses secara bersamaan.
Frank Farmer
10
Sebenarnya saat ini tidak ada yang namanya PHP6.
Evert
20
Karena utas ini adalah hasil teratas di Google, itu mungkin harus diperbarui untuk menunjukkan bahwa Zend Optimizer digabungkan menjadi PHP 5.5 yang dirilis bulan ini. Anda dapat mematikannya dan menggunakan APC, meskipun saya tidak yakin mengapa Anda menginginkannya.
Hutan
2
Penyimpanan data pengguna @Benjamin dapat dipulihkan dengan APCu ( github.com/krakjoe/apcu ) yang dapat diinstal dan digunakan bersama ZO.
Swader
23

Lihat tolok ukur dan perbandingan:

di sini dan di sana - sini

Boris Guéry
sumber
15
Sayang sekali mereka sudah sangat tua. 2006? Ewww.
analik
3
Saya kira kita bisa menunggu beberapa tahun dan komentar sebelumnya akan usang?
Benmark
5
Keberhasilan. Umurnya 3 tahun sekarang. Ewwww.
Swader
3
Bung, ini sudah 2016. Bisakah seseorang mengulang benchmark satu dekade lalu?
Pacerier
13

APC pasti. Ini ditulis oleh orang-orang PHP, jadi meskipun mungkin tidak berbagi kecepatan tertinggi, Anda dapat bertaruh pada fakta bahwa ini adalah kualitas tertinggi.

Ditambah Anda mendapatkan beberapa fitur bagus lainnya yang saya gunakan sepanjang waktu ( http://www.php.net/apc ).

Evert
sumber
3
Facebook juga merupakan pengguna APC yang berat - mereka menggunakan gigabyte, jika bukan terrabyte cache APC. Banyak perbaikan yang mereka buat telah dirilis kembali dan diintegrasikan ke dalam versi utama APC.
Frank Farmer
13
Anda sedang memikirkan memcache.
Evert
3
@Setiap FB mencoba untuk mencapai cache APC lokal sebelum membuat koneksi TCP / IP ke memcache scribd.com/doc/4069180/…
Andy
1
Mungkin .. tetapi ketika dia berbicara tentang perbaikan yang telah dirilis kembali, dll .. itu mungkin Memcache. Kecuali mereka telah melakukan hal yang sama dengan apc.
Evert
@Andy, Facebook tidak menggunakan semua ini. Ia menggunakan VM HipHop itu sendiri.
Pacerier
11

Pada akhirnya saya menggunakan eAccelerator - peningkatan kecepatan, jejak memori yang lebih kecil dan fakta bahwa sangat mudah untuk menginstal mempengaruhi saya. Ini juga memiliki ujung depan berbasis web yang bagus untuk membersihkan cache dan memberikan beberapa statistik.

Fakta bahwa itu tidak dipertahankan lagi bukan masalah bagi saya - itu berhasil, dan hanya itu yang saya pedulikan. Di masa depan, jika itu merusak PHP6 (atau apa pun), maka saya akan mengevaluasi kembali keputusan saya dan mungkin menggunakan APC hanya karena ini telah diadopsi oleh pengembang PHP (jadi harus lebih mudah untuk menginstal)

gbjbaanb.dll
sumber
4
"jika itu merusak PHP6" ... bukankah maksudmu "kapan?" :)
Brian Lacy
2
Ini lucu karena, 5,5 tahun kemudian, masih belum ada "PHP 6."
Eric L.
@Eirik, PHP 6 gitu kemarin. Sekarang jam 7 .
Pacerier
11

Mungkin penting untuk menunjukkan versi stabil, tidak stabil, dan dev saat ini dari masing-masing (termasuk tanggal):

APC

http://pecl.php.net/package/apc

dev        dev          2013-09-12
3.1.14     beta         2013-01-02
3.1.9      stable       2011-05-14

Xcache

http://xcache.lighttpd.net/

dev/3.2     dev        2013-12-13
dev/3.1     dev        2013-11-05
3.1.0       stable     2013-10-10
3.0.4       stable     2013-10-10

eAccelerator

https://github.com/eaccelerator/eaccelerator

dev         dev        2012-08-16
0.9.6-rc1   unstable   2010-01-26
0.9.5.1     stable     2007-05-16
Ryan Schumacher
sumber
1
Versi terbaru yang diperbarui - Xcache tampaknya memiliki sebagian besar aktivitas di fitur baru dan menambal versi sebelumnya
Ryan Schumacher
9

Dalam semua pengujian yang saya lihat, eAccelerator bekerja lebih cepat daripada cache lain di luar sana dan menggunakan lebih sedikit memeory untuk melakukannya. Muncul dengan skrip yang bagus untuk melihat pemanfaatan cache dan membersihkan cache, dll. EAccelerator kompatibel dengan xdebug dan Zend Optimizer.

APC disertakan dalam PHP karena dikelola oleh pengembang PHP. Performanya sangat baik, tapi tidak sebagus eAccelerator. Dan itu memiliki masalah kompatibilitas dengan Zend Optimizer.

Xcache dibuat oleh pengembang lighttpd, benchmark menunjukkan kinerjanya mirip dengan eAccelerator, dan lebih cepat dari APC.

Jadi mana yang terbaik?

APC = Bagus jika Anda menginginkan cache yang mudah yang akan selalu berfungsi dengan PHP, tidak repot. eAccelerator = Jika Anda punya waktu untuk memperbaruinya, selalu perbarui dan pahami cara kerjanya, ini akan bekerja lebih cepat. Dukungan jangka panjang tidak sepasti APC karena APC dilakukan oleh pengembang PHP.

Prom3th3an
sumber
7

Saya menguji eAccelerator dan XCache dengan Apache, Lighttp dan Nginx dengan situs Wordpress. eAccelerator menang setiap saat. Hal buruknya hanya paket yang hilang untuk Debian dan Ubuntu. Setelah pembaruan PHP sering kali server tidak berfungsi lagi jika modul eAccelerator tidak dikompilasi ulang.

eAccelerator RC terakhir adalah dari 2009/07/15 (0.9.6 rc1) dengan dukungan untuk PHP 5.3

devarni
sumber
6

Saya selalu menggunakan APC dengan php 5.1 dan 5.2, tetapi saya memiliki banyak kesalahan (acak) menggunakan APC dengan php 5.3: Halaman kosong yang aneh, kesalahan kehabisan memori acak. Mereka semua menghilang ketika saya menonaktifkan APC. Tapi itu bukan pilihan, karena menjalankan situs web bervolume tinggi.

Jadi saya mencoba eaccelerator. Sejauh ini sudah kokoh dan peningkatan kecepatan bahkan lebih besar daripada dengan APC. Orang-orang APC benar-benar perlu meluangkan waktu untuk memperbaiki bug.

miele
sumber
1
Saya memiliki masalah yang sama dengan APC dan php 5.3. Terima kasih atas komentarnya. PHP tanpa caching di setup saya jauh lebih cepat dan dapat diandalkan dibandingkan dengan APC. Halaman kosong dan kesalahan memori membuat saya gila sampai saya menghapus APC.
Paul D. Eden
tidak pernah tahu alasan kernel membunuh php-fpm karena apc
vimdude
4

Saya pikir APC adalah cara terbaik kecuali Anda menggunakan Zend Optimizer di situsnya. APC tidak kompatibel dengan Zend Optimizer jadi dalam hal ini Anda perlu menggunakan sesuatu seperti eAccelerator.

rg88.dll
sumber
Jika Anda menggunakan Zend Optimizer, Anda tidak memerlukan yang lain karena itu juga melakukan cache optcode dan memperlihatkan antarmuka yang kompatibel dengan APC.
txyoji
3

Bahkan eacceleator dan xcache bekerja cukup baik selama beban sedang, APC mempertahankan stabilitasnya di bawah intensitas permintaan yang serius. Jika kita berbicara tentang beberapa ratus permintaan / detik di sini, Anda tidak akan merasakan perbedaannya. Tetapi jika Anda mencoba merespons lebih banyak, tetap gunakan APC. Terutama jika aplikasi Anda memiliki karakteristik yang terlalu dinamis yang kemungkinan besar akan menyebabkan masalah penguncian pada beban seperti itu. http://www.ipsure.com/blog/2011/eaccelerator-as-zend-extension-high-load-averages-issue/ dapat membantu.

Matt Dryden
sumber
2

Segfault APC sepanjang hari dan sepanjang malam, tidak memiliki pengalaman dengan eAccelerator tetapi XCache sangat andal dengan banyak opsi dan pengembangan yang konstan.

ManreeRist
sumber