7/24 Türkçe destek:[email protected]Sistem durumuDestek talebi

PHP OPcache Nedir, Nasıl Etkinleştirilir?

Okuma süresi: 2 dk

Kısa yanıt: OPcache, PHP dosyalarının derlenmiş hâlini bellekte tutarak her istekte yeniden derlenmesini engeller. cPanel’de PHP Seçici › Eklentiler’den opcache’i işaretleyin; VPS’te php.ini’de opcache.enable=1 olduğundan emin olun ve büyük sitelerde opcache.memory_consumption ile opcache.max_accelerated_files değerlerini artırın.

Bu rehber kimin için: PHP siteleri yönetenler · Gereken süre: 15 dakika · Seviye: Orta

PHP her istekte dosyaları okur, ara koda dönüştürür ve çalıştırır. OPcache dönüştürme adımını önbelleğe alır; sonuç olarak aynı sunucuda daha fazla isteği daha düşük CPU kullanımıyla karşılarsınız. WordPress gibi binlerce PHP dosyası içeren uygulamalarda etkisi belirgindir ve uygulamada herhangi bir değişiklik gerektirmez.

cPanel’de etkinleştirme

  1. PHP Seçici: cPanel › “PHP Sürümü Seç” › Eklentiler sekmesini açın.
  2. opcache: Listede opcache kutusunu işaretleyin; değişiklik otomatik kaydedilir.
  3. Seçenekler: “Seçenekler” sekmesinde OPcache ile ilgili ayarlar listeleniyorsa varsayılanları koruyun.
  4. Doğrulayın: Geçici bir phpinfo sayfası oluşturup “Zend OPcache” bölümünde “Up and Running” yazısını görün; ardından dosyayı silin.

VPS’te önerilen değerler

  1. opcache.enable=1: OPcache’i etkinleştirir.
  2. opcache.memory_consumption=256: Önbellek için MB cinsinden bellek; büyük sitelerde 256 iyi bir başlangıçtır.
  3. opcache.max_accelerated_files=20000: Önbelleğe alınabilecek dosya sayısı; WordPress ve eklentileri için 10000 yetersiz kalabilir.
  4. opcache.validate_timestamps=1: Dosya değişikliklerini algılar; kapatırsanız her dağıtımda PHP-FPM’i yeniden başlatmanız gerekir.
  5. Yeniden başlatın: Değişiklikten sonra systemctl restart phpX.Y-fpm komutunu, X.Y yerine sunucudaki PHP sürümünü yazarak çalıştırın; hizmetin adı dağıtıma göre değişebilir.

Önbellek doluluğu

OPcache belleği dolarsa yeni dosyalar önbelleğe alınamaz ve performans düşer. opcache_get_status() çıktısındaki memory_usage ve opcache_statistics değerlerini kontrol edin; “oom_restarts” sayısı artıyorsa bellek değerini yükseltin.

Hâlâ çözülmediyse

OPcache, sayfa önbelleğinin yerine geçmez; ikisi birlikte çalışır. Sayfa önbelleği için LiteSpeed Cache, PHP ayarları için PHP ayarlarını değiştirme rehberine bakın. PHP-FPM ayarlarını tamamen kendiniz yönetmek isterseniz VPS sunucu seçeneklerimizi inceleyebilirsiniz.

Sık sorulan sorular

Dosya değişikliğim görünmüyor.

validate_timestamps kapalıysa veya revalidate_freq yüksekse önbellek eski kodu sunar; PHP’yi yeniden başlatın.

OPcache ile Redis aynı şey mi?

Hayır. OPcache PHP kodunu, Redis uygulama verisini önbelleğe alır.

İlgili rehberler