ERETEK
BİLGİ SİSTEMLERİ

Cloudflare, WP Rocket ve Redis Nasıl Birlikte Çalışır?

Cloudflare, WP Rocket, Redis ve OPcache aynı WordPress sitesinde nasıl birlikte çalışır? Katmanlar, istisnalar, temizleme zinciri ve sık hatalar.

Bu makalede7 bölüm
Teknik özet
Teknoloji
Cloudflare, WP Rocket, Redis, OPcache
Konu
WordPress cache mimarisi
Seviye
Orta

WordPress sitelerinde hız sorunlarının çoğu önbellek (cache) eksikliğinden değil, önbellek katmanlarının birbirini bilmeden çalışmasından kaynaklanır. Bu rehber OPcache, Redis, WP Rocket (tam sayfa cache) ve Cloudflare’in aynı sitede nasıl birlikte çalıştığını, her katmanın görevini ve en sık yapılan hataları anlatır.

Bir isteğin yolculuğu

  1. Cloudflare (kenar): Ziyaretçiye en yakın veri merkezi isteği karşılar. Statik dosyalar (CSS, JS, görseller) ve kural tanımlıysa HTML önbellekte varsa sunucuya hiç gidilmez.
  2. Tam sayfa cache (WP Rocket veya sunucu cache): İstek sunucuya geldiğinde hazır HTML dosyası varsa doğrudan sunulur; PHP ve veritabanı çalışmaz.
  3. PHP + OPcache: Önbellekte sayfa yoksa WordPress çalışır. OPcache PHP dosyalarını derlenmiş halde bellekte tuttuğu için kod her istekte yeniden derlenmez.
  4. Redis (nesne önbelleği): WordPress’in tekrarlanan sorgu ve hesaplama sonuçları (seçenekler, menüler, transient’ler) bellekten okunur; veritabanına giden sorgu sayısı azalır.
  5. MariaDB/MySQL: Önbellekte olmayan veri veritabanından okunur.

Her katmanın görevi ve sınırı

Katman Hızlandırdığı Etkisiz kaldığı durum
Cloudflare Statik dosyalar, kuralla HTML; coğrafi gecikme Oturumlu ve kişiye özel sayfalar
Tam sayfa cache Anonim ziyaretçi sayfaları Giriş yapmış kullanıcı, sepet, ödeme, form sonuçları
OPcache Tüm PHP çalıştırmaları Yanlış bellek ayarında sürekli yeniden derleme
Redis Admin paneli, WooCommerce, cache dışı sayfalar Yavaş sorgunun kendisi (sonucu önbelleğe alınamıyorsa)

Doğru istisnalar

Önbellek hatalarının büyük kısmı yanlış istisnalardan kaynaklanır. Tam sayfa cache ve Cloudflare’da şu istekler önbelleğe alınmamalıdır:

  • /wp-admin/, wp-login.php, önizleme bağlantıları ve REST API’nin kişiye özel uç noktaları.
  • WordPress oturum çerezi (wordpress_logged_in_*) veya WooCommerce çerezleri (woocommerce_items_in_cart, wp_woocommerce_session_*) taşıyan istekler.
  • Sepet, ödeme ve hesabım sayfaları; form gönderim sonuçları.
  • Sorgu dizesiyle kişiselleştirilen sayfalar (izleme parametreleri hariç tutulabilir).

WooCommerce’e özgü sorunlar ve test yöntemi için WooCommerce cache hataları rehberine bakabilirsiniz.

Temizleme (purge) zinciri

Bir yazı güncellendiğinde temizlik sırası içten dışa olmalıdır: önce nesne önbelleğinde ilgili anahtarlar, sonra tam sayfa cache’te ilgili sayfa ve arşivler, en son Cloudflare’da aynı URL’ler. WP Rocket ve Cloudflare’ın resmi entegrasyonu veya API tabanlı temizlik bu zinciri otomatikleştirir. Tüm önbelleği her değişiklikte silmek basit görünse de, yoğun trafikte sunucuya ani yük bindirir.

Sık yapılan hatalar

  • Aynı anda iki tam sayfa cache eklentisi veya hem eklenti hem sunucu cache’i aktif.
  • Cloudflare’da “Cache Everything” kuralı, oturum çerezi istisnası olmadan açılmış.
  • Redis bellek sınırı ve tahliye (eviction) politikası ayarlanmamış; bellek dolunca hata.
  • OPcache bellek ve dosya sayısı sınırı küçük; çok siteli sunucularda sürekli yeniden derleme.
  • CSS/JS birleştirme ve geciktirme ayarları test edilmeden açılmış; etkileşim veya düzen bozulmuş.

Doğrulama

Kurulumdan sonra yanıt başlıkları kontrol edilmelidir: Cloudflare için cf-cache-status (HIT/MISS/BYPASS), sayfa cache’i için eklentinin eklediği başlık veya HTML yorumu. Giriş yapmış kullanıcıyla, sepete ürün eklenmiş tarayıcıyla ve anonim tarayıcıyla ayrı ayrı test edilmelidir. Önbellek dışı yanıt süresi de ölçülmelidir; önbellek yavaş bir uygulamayı gizler ama düzeltmez. Sunucu tarafı için PHP-FPM ve MariaDB rehberine bakabilirsiniz.

Sık sorulan sorular

Redis ve WP Rocket aynı işi mi yapar?

Hayır. WP Rocket hazır HTML sayfayı saklar ve PHP’nin hiç çalışmamasını sağlar. Redis ise PHP çalıştığında (giriş yapmış kullanıcı, sepet, admin paneli, cache dışı sayfalar) tekrarlanan veritabanı sorgularının sonucunu bellekte tutar. Birbirini tamamlarlar.

Cloudflare HTML’i önbelleğe alırsa güncellemeler nasıl yansır?

İçerik güncellendiğinde ilgili URL’ler Cloudflare’da da temizlenmelidir. Bu, Cloudflare eklentisi, WP Rocket entegrasyonu veya API ile otomatikleştirilir; aksi halde ziyaretçiler önbellek süresi dolana kadar eski sayfayı görür.

İki sayfa cache eklentisini birlikte kullanabilir miyiz?

Önerilmez. İki tam sayfa önbelleği birbirinin dosyalarını ve başlıklarını bozar, temizleme mantığı karışır. Her katmanda tek bir sorumlu araç olmalıdır.

Sitenizin önbellek katmanlarını birlikte kurmak için WordPress cache ve CDN optimizasyonu hizmetimizi inceleyin.

Teknik özet
Teknoloji
Cloudflare, WP Rocket, Redis, OPcache
Konu
WordPress cache mimarisi
Seviye
Orta
Eretek uzman desteği

Bu konuyu projeniz için birlikte değerlendirelim.

Mevcut yapınızı inceleyip ihtiyacınıza uygun, sürdürülebilir bir çözüm planı öneriyoruz.