Projeler ve ajans desteği için müsait · Hızlı yanıt, işi yapan kişiden

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.

Sorunumu anlatayım Mesaj gönderin

Nasıl ilerliyorum

  1. 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.

  2. 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.

  3. 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.

  4. 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.

  5. 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

İhtiyacınızı bir dakikada anlatın

Size bir anket daha değil, doğrudan bir tahmin sunabilmem için birkaç hedefli soru.

pages
constructeur
extensions
hebergement (facultatif)
mesure (facultatif)
Size dönebilmem için en az bir e-posta veya telefon numarası belirtin.

Size dönebilmem için en az bir e-posta veya telefon numarası belirtin.

Sıkça sorulan sorular

Önyüzüm hızlı ama wp-admin neden değil?
Çünkü ikisi farklı iki mekanizma kümesi tarafından yönetilir. Önyüz büyük ölçüde sayfa önbelleğine ve görsellere bağlıdır; yönetim paneli ise Heartbeat API’ye, her istekte yüklenen seçeneklere ve nesne önbelleğine bağlıdır.
Heartbeat API tam olarak nedir?
Otomatik kaydetme ve bildirimler için her açık wp-admin sekmesinden düzenli aralıklarla sunucuyu sorgulayan yerel bir WordPress mekanizmasıdır. Varsayılan sıklığı azaltılabilir veya belirli ekranlarla sınırlandırılabilir.
Bir nesne önbelleği kurmak zor mu?
Barındırmaya bağlıdır: bazıları tek tıkla etkinleştirir, bazıları sunucu düzeyinde Redis veya Memcached kurulumu gerektirir; bu da teknik erişim olmadan mümkün değildir.
Bunu kendim düzeltebilir miyim?
Heartbeat’i ayarlamak veya barındırmanın sunduğu bir nesne önbelleğini etkinleştirmek bir genel uzmanın yapabileceği bir iştir. Belirli bir WooCommerce ekranına özgü yavaş bir sorguyu teşhis etmek kod düzeyinde bir okuma gerektirir.
Analytics neden tüm ekranların en yavaşı?
Çünkü her yüklemede sipariş geçmişinin tamamını toplar. Yıllar süren satışlara sahip bir katalogda, uygun bir indeks veya önbellek olmadan, SQL açısından en maliyetli ekran budur.