Saya membaca artikel ini: http://www.mysqlperformanceblog.com/2006/09/27/apc-or-memcached/ dari jauh ketika .. Saya ingin mendapatkan mesin caching terbaik yang tersedia sehingga aplikasi saya sangat cepat. Tentu saja saya tidak ingin over-cache tetapi saya ingin setidaknya memilih yang terbaik di luar sana. Dalam artikel itu dikatakan Memcached lambat dan apc cepat jadi mengapa semua orang memilih memcached ?
http://framework.zend.com/manual/en/zend.cache.backends.html#zend.cache.backends.twolevels di sini dikatakan "gunakan yang cepat (tapi terbatas) seperti Apc, Memcache ... dan "lambat" seperti File, Sqlite ... "apakah Anda pikir menggunakan Apc sebagai yang cepat dan Memcache karena yang lambat itu ide yang bagus?
apc_store
. Tembolok opcode saja membuat PHP beberapa kali lebih cepat.apc_store()
merupakan bonus tambahan.Jawaban:
Memcached adalah sistem caching terdistribusi, sedangkan APC tidak terdistribusi - dan terutama merupakan cache opcode.
Jika (dan hanya jika) Anda memiliki aplikasi web yang harus hidup di server web yang berbeda (loadbalancing), Anda harus menggunakan memcache untuk cache yang didistribusikan. Jika tidak, tetap gunakan APC dan cache-nya.
Anda harus selalu menggunakan opcode cache, yang merupakan APC (juga APC akan diintegrasikan ke dalam php6 iirc, jadi mengapa tidak mulai menggunakannya sekarang).
Anda dapat / harus menggunakan keduanya untuk tujuan yang berbeda.
sumber
opcode
cache?opcode
Cache adalah salah satu yang mengkompilasi kode PHP polos ke dalam kode mesin ( "opcode") dan kemudian menyimpannya dalam bentuk dikompilasi untuk permintaan masa depan (sampai mendeteksi file PHP asli telah berubah). Ini berarti bahwa PHP tidak harus menjalankan langkah kompilasi ini pada setiap permintaan tunggal, menghemat waktu. Ini hanya salah satu cara untuk membantu memastikan situs cepat (di antara banyak lainnya).Memcached jika Anda perlu mempertahankan status di beberapa server web (jika Anda memuat secara seimbang dan penting bahwa apa yang ada di cache sama untuk semua server).
APC jika Anda hanya perlu akses ke memori cepat untuk membaca (& menulis) di server (atau masing-masing).
Ingat APC juga dapat mengkompilasi dan mempercepat waktu eksekusi skrip Anda. Jadi Anda bisa misalnya menggunakan APC untuk meningkatkan kinerja eksekusi, saat menggunakan memcached untuk penyimpanan cache.
sumber
Keuntungan utama dari APC adalah cache opcode. Karena PHP 5.5 mengintegrasikan OpCache ke intinya dan APC untuk PHP 5.4 masih ditandai sebagai beta, ini bukan pengumuman resmi, tetapi pengembangan APC akan dihentikan dalam waktu dekat.
Jadi saya akan merekomendasikan Anda untuk memilih Memcached.
sumber
Saya menggunakan keduanya untuk kecepatan dan yang lainnya untuk menyinkronkan semua server saya. Jika Anda menggunakan memcache maka harap ingat port terbuka yang perlu Anda blokir dengan iptables.
sumber
Hai Thomaschaaf, saya harap ini bukan alat yang terlambat untuk Anda tetapi harap dicatat bahwa APC memiliki beberapa masalah yang terkait dengan "cache pengguna". Untuk mempersingkat cerita, ketika Anda mengatur batas waktu untuk entri cache, atau jika apache Anda crash di dalam kode APC internal (timeout, misalnya), maka Anda mungkin mengalami beberapa masalah.
Saya memiliki entri tentang masalah ini di sini: http://nirlevy.blogspot.com/2009/06/apc-futexwait-lockdown-make-your-apache.html , dan Anda juga harus membaca http: //t3.dotgnu. info / blog / php / user-cache-timebomb.html (dari salah satu pengembang APC saya pikir)
sumber
Saya hanya menggunakan APC karena APC adalah kode cache dan bertindak seperti memcache! Hanya 1 file konfigurasi bukan 2.
Dan hanya 1 tempat untuk memonitor kedua cache .....
sumber
Itu tergantung pada apa yang Anda lakukan tetapi untuk situs web drupal saya berjalan pada VPS, saya menemukan APC sangat bagus! Jika Anda menjalankan CentOS 6 itu tersedia sebagai pembaruan yum jadi sangat mudah untuk menginstal dan tidak ada konfigurasi karena standarnya wajar. Imho yang tidak punya otak.
sumber