wp-admin yönetim paneli çok yavaş
Hızlı bir mağaza önyüzü ile ağır çalışan bir yönetim paneli aynı nedenlere dayanmaz: wp-admin’in arkasında Heartbeat API, her istekte yüklenen seçenekler ve eksik bir nesne önbelleği gibi, önyüzü hızlı veya yavaş kılan şeylerden bağımsız, farklı bir mekanizma dizisi işler.
Nasıl ilerliyorum
-
Kapsamın belirlenmesi
Yavaşlığın özellikle wp-admin ve wc-admin’i etkilediğini, aynı anda site önyüzünün yüklenme süresiyle karşılaştırarak doğruluyorum.
-
Heartbeat API’nin kontrolü
admin-ajax.php çağrılarının sıklığını kontrol ediyorum; varsayılan olarak her açık wp-admin sekmesinde 15 ila 60 saniyede bir tetiklenir ve sınırlı sayıda PHP-FPM çalışanına sahip bir barındırmada etkisini değerlendiriyorum.
-
Autoload seçeneklerin denetlenmesi
autoload değeri yes olan wp_options satırlarının boyutunu ölçüyorum: bu veriler hem yönetim panelinde hem önyüzde her istekte yüklenir ve yıllar süren eklenti kurulumlarıyla birikir.
-
Nesne önbelleğinin kontrolü
Bir nesne önbelleğinin (Redis veya Memcached) kurulu olup olmadığını kontrol ediyorum. Yoksa, Siparişler listesi veya Raporlar gibi WooCommerce ekranları her yüklemede maliyetli SQL sorgularını yeniden çalıştırır.
-
Hedefli düzeltme
Neyin ağır bastığına göre, Heartbeat sıklığını ayarlıyor, eski seçenekleri temizliyor, bir nesne önbelleği kuruyor veya çok ağırlaşmış belirli bir yönetim ekranına özgü sorguyu yeniden yazıyorum.
Düzenli olarak ele aldığım durumlar
- Mağaza önyüzü hızlı yükleniyor, ama wp-admin her tıklamada birkaç saniye sürüyor
- Siparişler listesi, özellikle bir filtre uygulandıktan sonra, anormal derecede uzun sürede yükleniyor
- WooCommerce Analytics ekranı rakamları göstermeden önce uzun süre dönüyor
- Birden fazla wp-admin sekmesinin açık olması sitenin geri kalanını gözle görülür şekilde yavaşlatıyor
- Son zamanlarda hiçbir eklenti değişmediği hâlde yavaşlık yıldan yıla artıyor
Yönetim panelini özellikle ne yavaşlatıyor
Heartbeat API, otomatik kaydetme, bildirimler ve oturum kontrolleri için, her açık wp-admin sekmesinde varsayılan olarak 15 ila 60 saniyede bir admin-ajax.php’yi sorgular. Sınırlı sayıda PHP-FPM çalışanına sahip bir barındırmada, aynı anda açık birkaç sekme bile tüm yönetim panelini gözle görülür şekilde yavaşlatmaya yeter.
autoload=yes olarak işaretlenmiş wp_options satırları, yıllar süren eklenti kurulum ve kaldırma işlemleriyle birikir; bazı eklentiler bu satırları hiçbir zaman temizlemez. Bu seçenek kümesi hem yönetim panelinde hem önyüzde her istekte tamamen yüklenir: ağırlaştıkça, her sayfa sessizce ama sürekli olarak yavaşlar.
Bir nesne önbelleği (Redis veya Memcached) yoksa, WooCommerce yönetim ekranları, özellikle Siparişler listesi ve Analytics raporları, önceden hesaplanmış bir sonucu yeniden kullanmak yerine her yüklemede önemsiz olmayan SQL sorgularını yeniden çalıştırır. Rapor ekranları sipariş geçmişinin tamamını toplar: yıllar süren satışlara sahip bir katalogda, uygun bir indeks veya önbellek katmanı olmadan bu gerçekten ağırlaşabilir.
İlgili sayfalar
-
Yavaş WooCommerce sitesi
Yavaş bir önyüz, wp-admin’den farklı nedenlere dayanır: sayfa önbelleği, görseller, önyüz sorguları.
-
Bakım sözleşmesi
Düzenli bir takip, eski seçeneklerin ve kullanılmayan eklentilerin yıllarca birikmesini önler.
-
WooCommerce’de ele aldığım tüm konular
WooCommerce’de düzenli olarak ele aldığım diğer arızalar ve geliştirmeler.
İhtiyacınızı bir dakikada anlatın
Size bir anket daha değil, doğrudan bir tahmin sunabilmem için birkaç hedefli soru.