26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm
26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm
Apache'nin kurulumu ve başlatılması çok kolaydır, ancak önceden kurulmuş çok sayıda modülle birlikte gelir ve sonuç olarak düşük RAM VPS'de çalışırken performans sorunlarınız olabilir.
Bu nedenle, her zaman daha büyük bir sunucuya ihtiyaç yoktur, ancak Apache ayarlarını doğru şekilde yapılandırabilir ve mümkün olan en iyi performansa sahip olabilirsiniz. İşte bunu başarmak için yapmanız gereken birkaç şey.
Bu eğitim Ubuntu 14.04 LTS içindir ancak ilkeler önceki sürümlere de benzer.
Komut ile yüklenen ls /etc/apache2/mods-available/
tüm modüllerin ve şu anda etkin olan tüm modüllerin bir listesini görebilirsiniz ls /etc/apache2/mods-enabled/
.
İlk Apache kurulumunda varsayılan olarak etkin 15 veya daha fazla modül vardır. Bunlar çok fazla ve çoğuna gerek yok.
Her şeyden önce, gerekli olan bir şeyi devre dışı bırakmanız ve yeniden etkinleştirmeniz gerekiyorsa, şu anda etkin olan tüm modüllerin bir listesini yapmalı ve ileride başvurmak üzere kaydetmelisiniz. Daha sonra komutla modülleri tek tek devre dışı bırakın (örnek olarak moduleName'i kullanarak):
sudo a2dismod moduleName
... ve herhangi bir hata olup olmadığını görmek için her değişiklikten sonra Apache'yi yeniden başlatın.
İhtiyacınız yoksa devre dışı bırakmanız gereken bazı modüller şunlardır:
Bir modülü devre dışı bırakıp Apache yapılandırmasını yeniden yükledikten sonra, Apache hata günlüğünü nano gibi bir metin düzenleyicisiyle açarak hataları kontrol edebilirsiniz.
sudo nano /var/log/apache2/error.log
Bir hata alırsanız, ilgili modülü yeniden etkinleştirmeniz yeterlidir:
sudo a2enmod moduleName
Ardından, minimum listeyi düzenleyene kadar Apache'yi yeniden başlatın!
Varsayılan Apache yapılandırmasıyla (küçük sunucular için iyi dengelenmemiş), bellek hızla tükenebilir ve bulut sunucunuz aşırı yüklenebilir. Bu, web sayfasının sürekli yüklenirken durmasına neden olur. Sunucunun bu ölü Apache işlemlerini etkin tutacak, gereksiz yere içerik sunmaya çalışacak ve sunulacak işlem sayısını azaltacaktır.
Bu sorunu çözmek için, öncelikle sunucunuzun Apache dışında ne kadar RAM'e ihtiyacı olduğunu ve Apache işlemlerinin kullandığı ortalama bellek miktarını bulmanız gerekir.
Apache çalışırken sunucudaki üst komutu açın .
top -bn 1
Sonuç tablosunda:
Sonraki adım, mpm_prefork module config dosyasını düzenleyin:
sudo nano /etc/apache2/mods-enabled/mpm_prefork.conf
Şöyle görünebilir:
<IfModule mpm_prefork_module>
StartServers 2
MinSpareServers 2
MaxSpareServers 5
MaxRequestWorkers 30
MaxConnectionsPerChild 0
</IfModule>
Nerede:
Gelen MaxRequestWorkers ayarı, size yukarıdaki bölümünde bulunan duyduğunuz kadar değiştirmek zorunda.
Şimdi, VPS'niz aşırı yüklenir ve bir kerede hizmet edebileceği maksimum müşteri sayısına ulaşırsa, bu hizmet verecek ve diğer kullanıcılar hızlı bir hata alacaktır. Daha sonra tekrar denemek için sayfayı yeniden yükleyebilirler. Bu bağlantıların hızlı bir şekilde kapatılması, sunucuyu sonsuza kadar açık tutmak yerine sağlıklı bir durumda bırakmak çok daha iyidir.
Performansı en üst düzeye çıkarmak için kesinlikle daha az bilgi kaydedebilirsiniz. Varsayılan Apache yapılandırmasında LogLevel ayarı uyarılmak üzere ayarlanmıştır . Yalnızca hata mesajlarını saklamak için bunu hata olarak değiştirebilirsiniz .
Apache yapılandırma dosyasını açın:
sudo nano /etc/apache2/apache2.conf
Hattı bulun:
LogLevel warn
... ve şu şekilde değiştirin:
LogLevel error
Ardından dosyayı kaydedin ve Apache'yi aşağıdakilerle yeniden başlatın:
sudo service apache2 restart
Apache'nin günlükleri tuttuğu varsayılan dosya /var/log/apache2/error.log'dur .
Bir PHP sitesi çalıştırıyorsanız, mod_php modülünü kullanma şansınız çok yüksektir. Bu modül, istekler resim, css ve javascript gibi statik kaynaklar için olsa bile her Apache alt işleminin 100 MB'tan fazla RAM kullanmasına neden olabilir.
Harika bir alternatif, fastcgi protokolünü kullanan ayrı bir süreç olan php-fpm modülüdür. Php-fpm ile Apache işlemlerinin belleği statik içerik için 10 MB ve dinamik için 60 MB'ye düşebilir.
Bu değişiklikle çalışacak şeyleri almak biraz zor olsa da, çabaya değer.
Çoğu Apache yapılandırması , iş parçacığı için güvenli olan ve her biri bir iş parçacığıyla birden fazla alt işlem kullanan mpm_prefork modülünü kullanır ve her işlem bir seferde bir bağlantıyı yönetir. PHP veya Rails gibi harici modüllere ihtiyacınız yoksa , genellikle daha hızlı olan apache2-mpm-worker modülüyle değiştirebilirsiniz . Çalışan MPM, her biri çok sayıda iş parçacığı olan birden fazla alt işlem kullanır ve her iş parçacığı aynı anda bir bağlantıyı yönetir.
İşçi modülünü etkinleştirmek için modülü kurmanız gerekir.
sudo apt-get install apache2-mpm-worker
Bu komut mpm_prefork , mos_php ve diğer uyumsuz eklenti modüllerini kaldıracaktır .
26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm
Birçoğunuz Switch'in Mart 2017'de çıkacağını ve yeni özelliklerini biliyorsunuz. Bilmeyenler için, 'Switch'i 'olmazsa olmaz bir gadget' yapan özelliklerin bir listesini hazırladık.
Teknoloji devlerinin sözlerini yerine getirmesini mi bekliyorsunuz? teslim edilmeyenleri kontrol edin.
Büyük Veri Mimarisindeki farklı katmanları ve işlevlerini en basit şekilde öğrenmek için blogu okuyun.
Yapay Zekanın küçük ölçekli şirketler arasında nasıl popüler hale geldiğini ve onları büyütme ve rakiplerine üstünlük sağlama olasılıklarını nasıl artırdığını öğrenmek için bunu okuyun.
CAPTCHA, son birkaç yılda kullanıcıların çözmesi oldukça zorlaştı. Gelecekte spam ve bot tespitinde etkili kalabilecek mi?
Bilim hızla gelişip birçok çabamızı üstlendikçe, kendimizi açıklanamaz bir Tekilliğe maruz bırakmanın riskleri de artıyor. Okuyun, tekillik bizim için ne anlama gelebilir.
Teletıp, uzaktan sağlık hizmetleri ve gelecek nesiller üzerindeki etkisi nedir? Pandemi durumunda iyi bir yer mi değil mi? Bir görünüm bulmak için blogu okuyun!
Bilgisayar korsanlarının çok para kazandığını duymuş olabilirsiniz, ancak bu kadar parayı nasıl kazandıklarını hiç merak ettiniz mi? Hadi tartışalım.
Son zamanlarda Apple, sorunları gidermek için macOS Catalina 10.15.4'ü ek bir güncelleme yayınladı, ancak güncelleme, mac makinelerinde tuğla oluşmasına neden olan daha fazla soruna neden oluyor gibi görünüyor. Daha fazla bilgi edinmek için bu makaleyi okuyun