Kami menjalankan Magento 1.9.2.1 dengan Lesti_Fpc di server yang dikelola dengan cukup baik. Awalnya, kami menggunakan cache file default, yang baik-baik saja. Tetapi setelah katalog bertambah (walaupun saya pikir ~ 8000 produk tidak terlalu buruk) dan crawler menjadi lebih agresif, situs menjadi lambat begitu cache menjadi sedikit lebih besar. Ketika cache dihapus, semuanya berjalan cepat lagi.
Kami mencoba untuk beralih ke APC sebagai backend cache melalui entri berikut di local.xml:
<global>
<cache>
<backend>apc</backend>
<prefix>MYSHOP_</prefix>
</cache>
</global>
Tapi ini membuat masalahnya semakin buruk. Saya kemudian membaca bahwa Cm_Cache_Backend_File dibuat untuk masalah ini dan diintegrasikan melalui:
<global>
<cache>
<backend>Cm_Cache_Backend_File</backend>
</cache>
</global>
Ini terasa sedikit lebih baik, tetapi masalahnya masih sama. Untuk menjaga cache tetap kecil dan rapi, saya juga mengintegrasikan Aoe_CacheCleaner , tetapi ini juga tidak membantu. Namun, begitu cache dihapus, semuanya berjalan cepat lagi.
EDIT:
Berdasarkan jawaban oleh infabo, saya juga mengaktifkan Cm_Cache_Backend_File
FPC dengan file app/etc/fpc.xml
dan konten berikut:
<?xml version="1.0"?>
<config>
<global>
<fpc>
<lifetime>86400</lifetime>
<backend>Cm_Cache_Backend_File</backend>
</fpc>
</global>
</config>
Saya yakin ini masuk akal, tetapi juga tidak menyelesaikan masalah.
Saya tahu bahwa solusi umum untuk masalah ini tampaknya Redis (atau mungkin sebagai alternatif Memcached) sebagai backend cache, tetapi sayangnya, itu tidak tersedia di server kami yang dikelola. Beralih ke perusahaan hosting lain belum (belum) menjadi pilihan.
Saya banyak menyelidiki sekarang, tetapi saya tidak punya ide lagi. Mungkin orang lain bisa membantu?
sumber
Jawaban:
Saya menyelidiki lebih banyak dan saya pikir saya akhirnya menyelesaikan masalah. Jadi apa yang dapat Anda lakukan untuk menganalisis masalah seperti itu?
Untuk memiliki ide yang baik ketika cache menjadi terlalu besar dan jika masalahnya adalah ukuran cache yang sebenarnya, tambahkan cronjob yang memanggil skrip berikut, misalnya setiap 15 menit:
Kemudian Anda dapat menganalisis konten
/html/cache_log
untuk melihat bagaimana ukuran cache berkembang, ketika halaman Anda menjadi terlalu lambat dan jika penyebab sebenarnya adalah cache.Analisis file cache Anda. Oleh karena itu, sangat membantu untuk menulis semua file cache ke file log dengan misalnya:
Lihatlah file ini dan nama-nama file di dalamnya. Apa jenis file cache yang ada? Adakah yang mencurigakan? Dalam kasus saya, ada banyak file cache yang berisi
AMSHOPBY
nama file mereka - referensi ke ekstensi Amasty Improved Navigation (Amasty_Shopby
). Itu menciptakan banyak file cache. Beberapa dari mereka terlihat sangat aneh bagi saya. Menonaktifkan cache Navigasi yang Disempurnakan Amasty memecahkan masalah secara instan. Saya menghubungi dukungan mereka dengan deskripsi terperinci dan dukungannya sangat bagus. Strategi caching dengan cepat dirombak total dan sekarang jauh lebih baik. Mereka berjanji untuk mengintegrasikan tambalan dalam versi ekstensi berikutnya, sehingga setiap versi> 2.8.3 akan baik-baik saja.Semoga berhasil menemukan penyebab utama cache besar Anda!
sumber
Sudahkah Anda mencoba Cm_Cache_Backend_File sebagai backend di fpc.xml juga? Mungkin mencobanya. Saya akan memberikan Aoe_Profiler suntikan juga. Jika Anda dapat mereproduksi "pelambatan" pada staging-copy - pergi dan profil permintaan lambat Anda di sana. Kalau tidak, Anda dapat melakukannya pada produksi ( saya benar-benar tidak merekomendasikannya , tetapi jika Anda berani, Anda dapat mengkonfigurasi profiler hanya diaktifkan ketika parameter GET diatur dan lanjutkan)
sumber
fpc.xml
). Ide yang menarik, akan coba, terima kasih!