İLE %100 UYUMLU: Güvenli E-Posta Hosting Hizmetimizi 1 AY ÜCRETSİZ Deneyin! HEMEN OLUŞTURUN
Bir web sitesinin ziyaretçi sayısı arttığında veya arka planda çalışan işlemler yoğunlaştığında karşılaşılabilecek sorunlardan biri, hosting hesabının işlem limitine ulaşmasıdır. Web sitesinin aniden yavaşlaması, bazı sayfaların açılmaması, yönetim panelinde hata görülmesi ya da ziyaretçilerin 508 Resource Limit Is Reached uyarısıyla karşılaşması bu durumun belirtileri arasında yer alabilir.
cPanel üzerinde kullanılan process limit kavramı, bir hosting hesabının aynı anda çalıştırabileceği işlem sayısını belirleyen kaynak sınırlarıyla ilişkilidir. Ancak bu kavram çoğu zaman CPU, RAM veya eş zamanlı bağlantı limitleriyle karıştırılır. Özellikle CloudLinux altyapısında NPROC ve Entry Processes (EP) olarak adlandırılan iki farklı sınır bulunur. Bu değerler benzer görünse de aynı şeyi ölçmez ve farklı sorunlara neden olabilir.
Bu rehberde cPanel process limit kavramının ne anlama geldiğini, NPROC ve EP arasındaki farkları, limit aşımının web sitelerine etkilerini ve kaynak kullanımını kontrol altında tutmak için dikkat edilmesi gereken noktaları ele alacağız.
İçindekiler
cPanel process limit, bir hosting hesabına ait işlemlerin belirli bir sayı veya kaynak sınırı içerisinde çalışmasını sağlayan kısıtlamaları ifade eder. Buradaki işlem (process), sunucu üzerinde çalışan ve belirli bir görevi yerine getiren program veya uygulama örneğidir.
Bir web sitesine PHP üzerinden gelen isteklerin işlenmesi, zamanlanmış görevlerin çalıştırılması, SSH bağlantılarının açılması veya bazı arka plan uygulamalarının yürütülmesi sırasında farklı işlemler devreye girebilir.
Örneğin bir WordPress sitesinde ziyaretçi bir sayfayı açtığında PHP kodları çalışır, veritabanından içerik alınır ve sonuç ziyaretçiye gönderilir. Aynı anda başka ziyaretçiler de siteye erişiyorsa yeni işlemler veya mevcut işlemlere bağlı alt işlemler devreye girebilir.
Hosting hesabına tanımlanan process limit, bu işlemlerin kontrolsüz biçimde artmasını önler. Böylece tek bir hesabın sunucu kaynaklarını aşırı tüketerek aynı sunucudaki diğer hesapların performansını olumsuz etkilemesi sınırlandırılır.
Bu mekanizma özellikle paylaşımlı hosting altyapılarında önemlidir. Çünkü aynı fiziksel sunucu üzerinde birden fazla kullanıcıya ait web siteleri çalışabilir. Her hesabın belirli kaynak sınırları içerisinde tutulması, sunucu kaynaklarının daha dengeli dağıtılmasına yardımcı olur.
Burada önemli bir ayrıntı vardır: cPanel process limit ifadesi tek başına belirli bir limit türünü anlatmaz. CloudLinux kullanılan sistemlerde özellikle NPROC ve EP değerlerinin ayrı ayrı değerlendirilmesi gerekir.
Process limit konusunda en sık karşılaşılan karışıklık, NPROC ve Entry Processes değerlerinin aynı anlama geldiğinin düşünülmesidir. Oysa bu iki limit farklı işlem türlerini kontrol eder.
NPROC, bir hosting hesabının CloudLinux LVE (Lightweight Virtual Environment) içerisinde çalıştırabileceği toplam işlem ve thread sayısını sınırlar.
Bu kapsamda yalnızca web sitesi ziyaretçilerinin oluşturduğu PHP işlemleri değil, hesabın çalıştırdığı farklı uygulamalar ve arka plan görevleri de dikkate alınabilir.
Örneğin aşağıdaki işlemler NPROC kullanımını etkileyebilir:
NPROC limiti dolduğunda hesap yeni işlem veya thread oluşturmakta zorlanabilir. Bu durum, özellikle yeni bir PHP işleminin başlatılması gerektiğinde web sitesinin hata vermesine neden olabilir.
Örneğin bir WordPress sitesinde aynı anda çalışan PHP işlemleri, zamanlanmış görevler ve başka yardımcı uygulamalar toplam işlem sayısını yükseltebilir. NPROC sınırına ulaşıldığında mevcut işlemler çalışmaya devam etse bile yeni işlemlerin oluşturulması engellenebilir.
Entry Processes, kısaca EP, bir hosting hesabına giren eş zamanlı web işlemlerinin sayısını kontrol eder. CloudLinux dokümantasyonunda bu değer, genellikle Apache dinamik isteklerinin LVE içerisine giriş sayısıyla ilişkilendirilir.
Bir ziyaretçi PHP ile çalışan bir sayfaya eriştiğinde bu istek EP kullanımına katkıda bulunabilir. Aynı anda çok sayıda ziyaretçinin PHP tabanlı sayfalara erişmesi, EP değerinin yükselmesine neden olabilir.
Örneğin EP limiti 20 olarak tanımlanmış bir hesapta, aynı anda LVE içerisine giren isteklerin sayısı bu sınıra ulaştığında yeni istekler kabul edilmeyebilir. Bu durum bazı ziyaretçilerin 508 hatasıyla karşılaşmasına yol açabilir.
Ancak EP değeri doğrudan toplam ziyaretçi sayısı anlamına gelmez. Bir web sitesinin günlük 10.000 ziyaretçi alması, aynı anda 10.000 EP kullanacağı anlamına gelmez. Önemli olan belirli bir anda çalışan ve ilgili kaynak sınırına dahil edilen işlemlerin sayısıdır.
Bu iki değer birbirinin yerine kullanılamaz. Bir hosting hesabında EP kullanımı düşük olmasına rağmen NPROC değeri yüksek olabilir. Bunun nedeni PHP işlemlerinin alt süreçler oluşturması, cron görevlerinin çalışması veya PHP-FPM ve LiteSpeed gibi işlem yöneticilerinin ek süreçler bulundurması olabilir.
CloudLinux da NPROC ve EP değerlerinin farklı mekanizmalar olduğunu özellikle belirtir. Dolayısıyla yalnızca EP değerine bakarak hesabın toplam işlem yükü hakkında kesin bir sonuca ulaşmak doğru değildir.
Bir hosting hesabı tanımlanan işlem sınırına ulaştığında web sitesinin davranışı, hangi limitin aşıldığına ve sunucu altyapısına bağlı olarak değişir.
508 hatası, özellikle Entry Processes limitinin aşılmasıyla ilişkilendirilen hatalardan biridir.
Bir web isteği LVE içerisine girmek istediğinde hesap için belirlenen EP sınırı doluysa istek işlenemeyebilir. Ziyaretçi bunun sonucunda 508 Resource Limit Is Reached mesajıyla karşılaşabilir.
Bu hata her zaman web sitesinin kodlarında bir problem olduğu anlamına gelmez. Kaynak limitinin yetersiz olması veya kısa süreli yoğun trafik de bu duruma neden olabilir.
NPROC veya bellek gibi farklı kaynak sınırlarına ulaşılması, yeni işlemlerin başlatılamamasına neden olabilir. PHP uygulamaları gerekli işlemleri gerçekleştiremediğinde 500 Internal Server Error hatası görülebilir.
Ancak 500 hatasının tek nedeni process limit değildir. PHP hataları, yanlış dosya izinleri, hatalı yapılandırmalar ve uygulama sorunları da aynı yanıt koduna neden olabilir.
Bu nedenle hata kodunu görmek tek başına yeterli teşhis sağlamaz.
Sunucu, istenen işlemi gerçekleştiremediğinde veya gerekli kaynaklara erişemediğinde 503 hatası döndürebilir.
Özellikle NPROC ve bellek limitlerinin aşılması gibi durumlarda bu hatayla karşılaşılabilir. Bununla birlikte sunucu bakım çalışmaları, uygulama servislerinin yanıt vermemesi veya başka altyapı problemleri de 503 hatasına neden olabilir.
Her limit aşımı doğrudan hata sayfası oluşturmaz. Bazı kaynak sınırlarına ulaşıldığında işlemler tamamen durmak yerine yavaşlatılabilir.
Örneğin CPU veya disk I/O sınırının aşılması, PHP işlemlerinin daha uzun sürede tamamlanmasına yol açabilir. İsteklerin tamamlanma süresi uzadıkça aynı anda çalışan işlem sayısı da artabilir. Bu durum zaman içerisinde EP ve NPROC kullanımını dolaylı olarak yükseltebilir.
Hosting hesabının kaynak kullanımını kontrol etmek için cPanel içerisinde bulunan kaynak izleme araçlarından yararlanılabilir.
CloudLinux kullanılan ve ilgili özelliklerin etkinleştirildiği sistemlerde cPanel menüsünde genellikle Metrics (Metrikler) > CPU and Concurrent Connection Usage veya benzer isimli bir kaynak kullanım ekranı bulunur.
Bu ekran üzerinden hesabın kaynak tüketimi ve limitlere ulaşma durumu takip edilebilir.
Kontrol sırasında şu değerlere dikkat edilmelidir:
Kaynak kullanım ekranında yalnızca mevcut değerleri incelemek yeterli değildir. Özellikle limit aşımı kayıtları ve geçmiş kullanım grafikleri de değerlendirilmelidir.
Örneğin web sitesinde gün içerisinde herhangi bir problem yaşanmadığı halde belirli saatlerde 508 hatası görülüyorsa kaynak kullanım geçmişi, yoğunluğun hangi zamanlarda oluştuğunu anlamaya yardımcı olabilir.
Önemli: Bu ekranın görünmesi ve gösterilen metriklerin kapsamı sunucunun CloudLinux yapılandırmasına, cPanel sürümüne ve hosting sağlayıcısının etkinleştirdiği özelliklere bağlıdır. Her cPanel hesabında aynı ekran bulunmayabilir.
Process limitin tekrar tekrar aşılması, genellikle web sitesinin çalışma biçimi veya kaynak tüketimiyle ilgili bir soruna işaret eder. Ancak sorunun kaynağı her zaman yüksek ziyaretçi sayısı değildir.
PHP uygulamalarının gereğinden uzun süre çalışması, aynı anda daha fazla işlemin aktif kalmasına neden olabilir.
Özellikle veritabanı sorgularının yavaş olması, dış API servislerinden yanıt beklenmesi veya büyük dosyaların işlenmesi PHP süreçlerinin tamamlanma süresini uzatabilir.
İşlemler daha geç sonlandığında yeni istekler gelmeye devam eder ve eş zamanlı işlem sayısı artabilir.
WordPress sitelerinde kullanılan bazı eklentiler, beklenenden fazla kaynak tüketebilir.
Özellikle aşağıdaki işlemler dikkatle incelenmelidir:
Bir eklentinin çok sayıda işlem oluşturması her zaman hatalı olduğu anlamına gelmez. Ancak bu işlemlerin gereksiz sıklıkta çalışması veya uzun süre tamamlanmaması kaynak tüketimini artırabilir.
Cron Job, belirli zamanlarda otomatik görevlerin çalıştırılmasını sağlar.
Bir hosting hesabında çok sayıda zamanlanmış görev bulunuyorsa bunların aynı anda çalışması NPROC kullanımını yükseltebilir.
Örneğin bir e-ticaret sitesinde sipariş kontrolleri, stok güncellemeleri, e-posta gönderimleri ve raporlama görevleri aynı zaman aralığına planlanmış olabilir.
Görevlerin çalışma süreleri uzunsa yeni görevler başlamadan önce eski işlemler tamamlanamayabilir. Böylece işlem sayısı beklenenden daha fazla artabilir.
Web sitelerine gelen her istek gerçek bir ziyaretçiden kaynaklanmayabilir.
Arama motoru botları, içerik tarayıcıları, otomatik deneme istekleri ve kötü amaçlı trafik kaynak tüketimini artırabilir.
Özellikle dinamik sayfalara yoğun şekilde istek gönderilmesi EP kullanımını yükseltebilir. Bu nedenle erişim loglarının incelenmesi, olağan dışı IP adreslerinin ve tekrarlayan isteklerin belirlenmesi önemlidir.
PHP-FPM ve LiteSpeed gibi PHP çalıştırma mekanizmaları, uygulama isteklerini işlemek için birden fazla süreç kullanabilir.
Bu süreçlerin çalışma biçimi, NPROC ve EP değerlerinin birbirinden farklı olmasına neden olabilir.
Örneğin PHP-FPM veya LiteSpeed kullanan bir sistemde istek tamamlandıktan sonra bazı yardımcı süreçler bir süre daha çalışmaya devam edebilir. Bu nedenle EP değeri düşük görünürken toplam işlem sayısı yüksek olabilir.
Process limit sorunlarını çözmek için yalnızca limit değerini yükseltmek yerine, kaynak tüketiminin neden arttığını belirlemek gerekir.
Aşağıdaki kontroller sorunun kaynağını bulmaya yardımcı olabilir.
Kullanılmayan WordPress eklentileri, temalar ve arka plan uygulamaları devre dışı bırakılmalı veya kaldırılmalıdır.
Özellikle aynı işi yapan birden fazla eklentinin birlikte kullanılması gereksiz işlem yükü oluşturabilir.
Zamanlanmış görevlerin çalışma sıklığı ve süreleri incelenmelidir.
Birbirine yakın saatlerde çalışan yoğun görevler mümkünse farklı zaman aralıklarına dağıtılmalıdır. Ayrıca tamamlanmayan veya sürekli yeniden başlayan görevler kontrol edilmelidir.
Yavaş PHP kodları ve verimsiz SQL sorguları, işlemlerin daha uzun süre aktif kalmasına neden olabilir.
Bu nedenle özellikle yavaş sorgular, gereksiz veritabanı işlemleri ve tekrarlanan API çağrıları incelenmelidir.
Uygun önbellekleme yöntemlerinin kullanılması da her ziyaretçide aynı işlemlerin yeniden gerçekleştirilmesini önleyebilir.
Erişim logları incelenerek kısa sürede çok sayıda istek gönderen IP adresleri, botlar ve olağan dışı trafik davranışları belirlenmelidir.
Gerekli durumlarda güvenlik duvarı, hız sınırlama ve bot yönetimi kuralları uygulanabilir.
Ancak arama motorlarının meşru tarama isteklerini engellememek için bot filtreleri dikkatli yapılandırılmalıdır.
Kaynak limitinin yalnızca hata alındığında kontrol edilmesi yerine düzenli olarak izlenmesi daha sağlıklıdır.
Özellikle EP ve NPROC değerlerinin hangi saatlerde yükseldiği, limit aşımının tekrarlanıp tekrarlanmadığı ve diğer kaynaklarla birlikte nasıl değiştiği değerlendirilmelidir.
Process limit için her web sitesine uygulanabilecek tek bir ideal değer bulunmaz. İhtiyaç duyulan kaynak miktarı, uygulamanın türüne, trafik yoğunluğuna, PHP çalışma biçimine ve sunucunun yapılandırmasına göre değişir.
CloudLinux tarafından yayımlanan örnek kaynak profillerinde tipik hosting hesapları için EP 20, NPROC 100 gibi değerler yer alırken daha yüksek kaynak profillerinde EP 40 gibi değerler önerilebilmektedir.
Bu değerler tüm hosting paketleri için zorunlu veya evrensel standart değildir. CloudLinux’un örnek yapılandırmalarıdır ve gerçek ihtiyaçlara göre değerlendirilmelidir.
Burada özellikle şu noktalara dikkat edilmelidir:
Bir hosting hesabında EP değerini artırmak, NPROC limitinin de artırılmasını gerektirebilir. Çünkü daha fazla eş zamanlı istek, beraberinde daha fazla işlem oluşturabilir.
Bu nedenle iki limit birbirinden bağımsız değerlendirilmemelidir.
Hayır. Process limit, CPU ve RAM limitleriyle ilişkili olsa da farklı bir kaynak kontrol mekanizmasıdır.
CPU limiti, hesabın işlemci gücünden ne kadar yararlanabileceğini belirler. RAM limiti ise işlemlerin kullanabileceği fiziksel belleği sınırlar.
NPROC toplam işlem ve thread sayısını, EP ise LVE içerisine giren eş zamanlı işlemleri kontrol eder.
Örneğin bir web sitesi düşük CPU kullanmasına rağmen çok sayıda kısa süreli PHP işlemi oluşturabilir. Bu durumda işlem limitleri dolarken CPU kullanımı görece düşük kalabilir.
Benzer şekilde tek bir PHP işlemi yüksek miktarda bellek tüketebilir ve RAM limitine ulaşılabilir. Ancak bu durum tek başına NPROC veya EP sınırının aşıldığı anlamına gelmez.
Dolayısıyla kaynak kullanımını değerlendirirken yalnızca bir metriğe odaklanmak yerine CPU, RAM, EP, NPROC ve disk I/O değerleri birlikte incelenmelidir.
Öncelikle limitin gerçekten hangi kaynakta aşıldığı belirlenmelidir. cPanel kaynak kullanım ekranındaki geçmiş kayıtlar, limit aşım sayaçları ve sunucu logları bu konuda yol gösterici olabilir.
CloudLinux altyapısında sistem yöneticileri lvetop, lveps ve lveinfo gibi araçlardan yararlanarak hesapların kaynak tüketimini daha ayrıntılı inceleyebilir.
lvetop
lveps
lveinfo
Örneğin lvetop, aktif LVE kaynak kullanımını takip etmek için kullanılabilir. lveps ise ilgili LVE içerisindeki süreçlerin incelenmesine yardımcı olur.
Sunucu yönetimi yetkisi bulunan kişiler, hesap bazında limit değerlerini de kontrol edebilir. CloudLinux’un lvectl aracı bu amaçla kullanılabilen komut satırı araçlarından biridir.
lvectl
Paylaşımlı hosting kullanıcılarının ise bu araçları doğrudan çalıştırma yetkisi bulunmayabilir. Bu durumda kaynak kullanım ekranındaki verilerin hosting sağlayıcısıyla paylaşılması ve hangi limitin aşıldığının netleştirilmesi gerekir.
Özellikle sürekli tekrarlanan 508, 500 veya 503 hatalarında yalnızca limit yükseltilmesini istemek yerine, ilgili zaman aralığındaki işlem yoğunluğunun ve hata kayıtlarının incelenmesi daha doğru bir yaklaşımdır.
cPanel process limit, bir hosting hesabının sunucu üzerinde çalıştırabileceği işlemlerin kontrol altında tutulmasını sağlayan önemli bir kaynak yönetimi mekanizmasıdır. Ancak NPROC ve Entry Processes (EP) değerlerinin farklı işlevlere sahip olduğu unutulmamalıdır.
NPROC toplam işlem ve thread sayısını sınırlandırırken EP, eş zamanlı olarak LVE içerisine giren web işlemlerini kontrol eder. Bu değerlerden herhangi birinin aşılması, web sitesinde 508, 500 veya 503 gibi hatalara ve performans sorunlarına neden olabilir.
Process limit sorunlarını kalıcı olarak çözmek için yalnızca limitleri yükseltmek yeterli değildir. PHP süreçleri, WordPress eklentileri, cron görevleri, bot trafiği ve veritabanı performansı birlikte değerlendirilmelidir.
Düzenli kaynak takibi ve doğru yapılandırma sayesinde hosting hesabının daha dengeli çalışması sağlanabilir. En sağlıklı yaklaşım, kaynak limitlerini gerçek kullanım verilerine göre belirlemek ve sürekli limit aşımına neden olan işlemleri ortadan kaldırmaktır.