PHP-FPM Sanallaştırma Altyapısında CyberPanel Optimizasyonu ve OOM Hatası Çözümü

0 Ответы 5 Просмотры
·
Участники
Автор темы #0
PHP-FPM (FastCGI Process Manager), yüksek trafikli web sunucularında PHP uygulamalarını etkin bir biçimde yönetmek için yaygın olarak kullanılır. Ancak, sanallaştırma ortamlarında özellikle CyberPanel gibi kontrol panelleri ile çalışan sistemlerde, PHP-FPM’nin yanlış yapılandırılması veya kaynak sınırlarının aşılması, OOM (Out of Memory) killer hatalarına neden olabilir. Bu durumda, sunucunun RAM kullanımı kritik seviyelere ulaşır ve Linux işletim sistemi, otomatik olarak OOM killer'ı devreye sokar, bu da hizmet kesintilerine yol açar.

İlk adım olarak, sanallaştırma altyapısında RAM tahsislerinin uygun şekilde yapılması önemlidir. Çok sayıda PHP-FPM işlemi aynı anda çalışıyorsa, her birinin bellek kullanımı dikkatlice izlenmelidir. Ayrıca, PHP-FPM ve CyberPanel konfigürasyonlarını optimize ederek bu sorunu azaltabilirsiniz.

PHP-FPM Konfigürasyonu açısından, www.conf dosyasındaki şu parametreler kritik önemdedir:

  • pm.max_children: Bu değer, aynı anda çalışacak PHP-FPM işlemi sayısını belirler. Çok yüksek olması, bellek aşımına neden olabilir. Ortamınıza göre, sisteminizin toplam RAM kapasitesine uygun olarak ayarlanmalıdır. Örneğin, 8 GB RAM’e sahip bir sunucuda, yaklaşık 100-150 arasında bir değer makul olabilir.

  • pm.start_servers, pm.min_spare_servers, pm.max_spare_servers: Bu parametreler, PHP-FPM’nin başlangıç ve yedek işlemlerini düzenler. Gereksiz yere yüksek değerler belirlemek, bellek tüketimini artırabilir.

    Örnek ayar:

    CODE
    123456
    pm = dynamic
    pm.max_children = 100
    pm.start_servers = 10
    pm.min_spare_servers = 10
    pm.max_spare_servers = 20
    


    Ayrıca, sistemde toplam RAM ve swap alanını izlemek için htop veya free -m komutlarını kullanmak, anlık bellek kullanımını anlamada faydalıdır. Swap alanının yetersiz olması, bellek aşımını tetikleyebilir.

    İkinci önemli nokta ise, Linux kernel parametreleriyle bellek yönetimini optimize etmektir. vm.overcommit_memory ve vm.overcommit_ratio ayarları, bellek tahsisinde esneklik sağlar. Örneğin, vm.overcommit_memory değerini 1 yaparak, kernel’in bellek tahsisinde aşırıya kaçmasına izin verebilirsiniz:

    CODE
    12
    sysctl -w vm.overcommit_memory=1
    


    Son olarak, sistemde OOM killer hatalarını önlemek veya azaltmak için, oom_score_adj veya oom_adj parametreleri ile PHP-FPM veya web sunucusu işlemlerinin öncelik sırasını ayarlayabilirsiniz.

    Özetle, PHP-FPM ve CyberPanel ortamında bellek sınırlarını doğru belirlemek, gereksiz işlemleri kapatmak ve kernel ayarlarını optimize etmek, OOM hatalarını azaltır ve sistem stabilitesini artırır. Bu adımlar, sanallaştırma altyapısında yüksek performans ve güvenilirlik sağlar.
  • Чтобы ответить, необходимо войти в систему.

    0 цитат выбрано