Bu hata neden oluşur?
Nedenler, sahada karşılaştığımız sıklığa göre sıralıdır.
- 01
Önbelleksiz çalışan eklenti ya da tema
Çok sıkSayfa önbelleği ya da nesne önbelleği kurulu değilse WordPress her ziyarette veritabanına tekrar sorgu atar; ziyaretçi arttıkça CPU tüketimi hızla yükselir.
- 02
Bot ve kaba kuvvet trafiği
Çok sıkXML-RPC üzerinden yapılan giriş denemeleri ya da tarayıcı botlarının sık ziyareti, gerçek ziyaretçi yokken bile sunucuyu meşgul eder.
- 03
wp_options tablosunda şişmiş autoload verisi
SıkBazı eklentiler geçici veriyi (transient) kalıcı gibi işaretler; bu veri her sayfa yüklemesinde belleğe çekilir ve zamanla sorgu süresini uzatır.
- 04
WP-Cron'un her istekte tetiklenmesi
SıkVarsayılan kurulumda WP-Cron, sayfa her açıldığında çalışır; yoğun trafikte bu, planlanmış görevleri (yedekleme, e-posta, senkronizasyon) art arda tetikleyip CPU'yu yükseltebilir.
- 05
Paylaşımlı pakette düşük CPU/giriş süreci limiti
Ara sıraCloudLinux tabanlı sunucularda hesaba tanımlı LVE (sanal kaynak sınırı) [limit değeri sağlayıcıya göre değişir] düşük ayarlanmışsa normal trafik bile aşımı tetikleyebilir.
- 06
OpenCart'ta önbellek dışı kalan kategori/ürün sorguları
Ara sıraÖnbellek modülü kapalıysa ya da ek modüller (fiyat karşılaştırma, stok senkronizasyonu) sık sorgu çalıştırıyorsa veritabanı yükü hızla artar.
Adım adım çözüm
Veritabanı temizliği ya da .htaccess/wp-config.php değişikliklerinden önce mutlaka tam yedek alın.
- 1
Kaynak kullanım raporunu inceleyin
Barındırma panelinde hesabın CPU, bellek ve giriş süreci (I/O) grafiklerini gösteren bir bölüm bulunur [panelin adı ve menü yolu sağlayıcıya göre değişir]. Hangi saatte ve hangi kaynakta aşım yaşandığını not edin; bu bilgi sonraki adımlarda hangi sürecin sorumlu olduğunu daraltmaya yardımcı olur.
- 2
Sunucu üzerinde süreçleri canlı izleyin
SSH erişiminiz varsa hangi PHP sürecinin ya da veritabanı sorgusunun CPU'yu tükettiğini görebilirsiniz. Aşağıdaki komut, en çok kaynak kullanan işlemleri sıralar.
bashtop -c -o %CPU - 3
XML-RPC ve kaba kuvvet trafiğini kapatın
WordPress'in uzaktan yayın arayüzü olan XML-RPC, çoğu sitede kullanılmaz ama botlar tarafından sık hedeflenir. Kullanmıyorsanız .htaccess dosyasına aşağıdaki kuralı ekleyerek erişimi kapatabilirsiniz. Değişiklikten önce dosyanın bir kopyasını alın.
apache<Files xmlrpc.php> Require all denied </Files> - 4
WP-Cron'un varsayılan tetiklenmesini kapatın
Sürekli tetiklenen WP-Cron yükünü azaltmak için varsayılan mekanizmayı devre dışı bırakabilirsiniz. Önce wp-config.php dosyasının yedeğini alın, sonra aşağıdaki satırı "That's all, stop editing!" satırının üstüne ekleyin.
phpdefine( 'DISABLE_WP_CRON', true ); - 5
Görevleri sistem cron'una bağlayın
WP-Cron'u kapattıktan sonra, gerçek zamanlayıcıda birkaç dakikada bir wp-cron.php dosyasını tetikleyecek bir görev tanımlayın [sağlayıcının cron paneli ve komutu farklı olabilir].
bash*/5 * * * * wget -q -O /dev/null https://siteadresiniz.com/wp-cron.php >/dev/null 2>&1 - 6
Veritabanındaki gereksiz veriyi temizleyin
Şişmiş revizyon kayıtları ve geçici veriler (transient) sorgu süresini uzatır. İşlemden önce mutlaka tam veritabanı yedeği alın; aşağıdaki komutlar kalıcı silme yapar.
bashwp transient delete --all wp post delete $(wp post list --post_type=revision --format=ids) --force - 7
Sayfa ve nesne önbelleğini etkinleştirin
Önbellekleme, her istekte veritabanına gitmek yerine hazır sayfayı sunar ve CPU yükünü büyük ölçüde azaltır [hangi önbellek çözümünün kurulu olduğu sunucuya göre değişir]. WooCommerce'de sepet ve ödeme sayfalarını önbellek dışı bırakmayı unutmayın; aksi halde stok ve fiyat bilgisi yanlış görünebilir.
- 8
OpenCart'ta önbellek ve modülleri kontrol edin
Önbellek ayarının açık olduğunu doğrulayın [OpenCart sürümüne göre önbellek dizini ve ayar adı değişir]. Kullanılmayan üçüncü parti modülleri devre dışı bırakmak, gereksiz sorgu yükünü azaltır.
- 9
Barındırma sağlayıcısıyla limitleri görüşün
Kaynak tüketimini azalttıktan sonra hesap yine askıya alınıyorsa pakete tanımlı CPU ya da giriş süreci limiti trafiğinize göre düşük olabilir; sağlayıcıdan üst pakete geçiş ya da limit artışı isteyin.
Hangi sürümlerde görülüyor?
| WordPress | PHP | Durum | Not |
|---|---|---|---|
| Paylaşımlı hosting (cPanel / LiteSpeed) | PHP 7.4 | Sık görülüyor | CloudLinux tabanlı sunucularda LVE limitleri etkinken normal trafik bile aşımı tetikleyebilir. |
| WooCommerce mağazaları | PHP 7.2 | Sık görülüyor | Sepet ve ödeme sayfaları önbelleklenmediği için sorgu yükü diğer sayfalara göre daha yüksektir. |
| OpenCart | PHP 8.4 | Ara sıra görülüyor | Önbellek kapalıyken kategori ve ürün sorguları CPU tüketimini artırır. |
Çözüldüğünü nasıl anlarsınız?
- Barındırma panelinde hesap durumu "Aktif" görünüyor.
- Kaynak kullanım grafiğinde ani CPU/IO sıçraması yok.
- Site yoğun saatlerde de normal hızda açılıyor.
- Sunucu günlüklerinde tekrarlayan bot isteği ya da başarısız giriş denemesi azaldı.
Ne zaman uzmana başvurmalı?
Kaynak aşımı tek seferlik bir olay değilse ve hangi sürecin sorumlu olduğunu bulmak zaman alıyorsa, sunucu günlüklerini okumak ve sorguları profillemek teknik bilgi gerektirir. Hata Ayıklama ve Onarım hizmetimizde sunucu düzeyinde inceleme yapar, kaynağı tüketen süreci bulur ve kalıcı çözümü uygularız. Hesap zaten askıya alındıysa ve site bir an önce açılması gerekiyorsa, Acil Müdahale hizmetiyle önceliklendirilmiş destek alabilirsiniz.
İlgili sayfalar: Hata Ayıklama ve Onarım · Acil Müdahale · Hosting hata çözümleri · Ücretsiz hız testi
Bu hatayı ₺2.500'e 2 saatte çözelim.
Sabit fiyat, kopya sitede çalışma, yazılı çözüm notu. Aynı hata 7 gün içinde tekrar ederse ücretsiz.
Sık sorulanlar
Kaynak aşımı hesabımdaki verileri siler mi?
Hayır, hesap yalnızca askıya alınır; dosya ve veritabanı olduğu yerde durur. Yine de müdahaleye başlamadan önce tam yedek almanız önerilir.
Hesabım yeniden açıldıktan sonra aynı sorun tekrarlanır mı?
Kaynak tüketen süreç bulunup durdurulmazsa evet, hesap tekrar askıya alınabilir; önbellekleme ve bot engelleme kalıcı çözüm için önemlidir.
Hangi eklentinin kaynak tükettiğini nasıl anlarım?
Sunucu günlükleri ya da barındırma panelindeki süreç izleme aracı, hangi PHP dosyasının çağrıldığını gösterir [sunulan detay seviyesi sağlayıcıya göre değişir].
Paylaşımlı hosting yerine daha üst pakete mi geçmeliyim?
Trafiğiniz optimize edildikten sonra hâlâ limitleri zorluyorsanız evet; ama önce önbellekleme ve gereksiz sorguları temizlemek çoğu zaman yeterli olur.
Hesap ne kadar sürede yeniden açılır?
Bu, sağlayıcının politikasına bağlıdır [bazı sağlayıcılar otomatik açar, bazıları destek talebi ister].