Ağır Wordpress MySQL sorgusu, bulmama yardım ve optimize edin

3 Cevap php

Ben bir wordpress siteniz var ve bu çalışıyor oldukça popüler ama gün son çift üzerinde benim performans korkunç bozulmuş.

Ben Jet Profiler yüklü ve ben yanlış bir şey bulabilir ve bu bir sorgu sürekli kötü suçlu olup olmadığını görmek için MySQL veritabanı takip edilmiştir.

SELECT SQL_CALC_FOUND_ROWS  wp_posts.* FROM wp_posts  WHERE 1=1  AND wp_posts.post_type = 'post' AND (wp_posts.post_status = 'publish')  ORDER BY wp_posts.ID ASC LIMIT 0, 1

Benim ilk tahminim SQL_CALC_FOUND_ROWS işlevini kaldırmak ve sadece belirli alanları olmak üzere * değiştirmek için olurdu ama ben bu sorguyu ne aradığını bulamıyor.

Nasıl hangi php dosyası bu aradığını öğrenmek istiyorsunuz?

3 Cevap

Nihai çözüm denir TDO Mini Formlar bir fiş kötü kodlu ve benim veritabanı yok olmasıydı.

Hiç bu sorun var ve o fişi varsa o kadar şiddetle kaldırmanızı öneririz. Hatta artık eklenti veritabanında geçerli bir seçenek olarak mevcut görünmüyor

Ön sayfası iyi bir şans var. Ben kullanarak WP Super Cache ya da başka bir şey (nginx, Squid, vb) ya WordPress önünde önbelleğe yükledim varsayıyorum. Eğer değilse, veritabanına bakarak olmamalıdır. Caching is critical for WP.

Onların izci yayınlanan bu iki konulara bakmak isteyebilirsiniz:

http://core.trac.wordpress.org/ticket/10469

http://core.trac.wordpress.org/ticket/12557

(Güncelleme: bir bağlantı eklendi)