+6 съвета за оптимизация на Nginx


nginx

nginx speed performance


 

NGINX, обявен за Engine-X, е отворен, високоефективен, лек уеб сървър. Той се използва и като обратно прокси (reverse proxy) за HTTP, HTTPS, SMTP, IMAP, POP3 протоколи.

NGINX е полезен за балансиране на натоварването на HTTP кеша и сървърите. За популярността на NGINX може да се съди по факта, че той е отговорен за обслужването на над 50% от трафика в интернет.

Въпреки, че NGINX е предназначен да бъде бърз и ефективен, вие също играете роля в този процес. Тук представяме 6 съвета как да поддържате настройката на NGINX на най-ефективно ниво.

 

 1. Регулиране на работните процеси

Работните процеси (главният процес и процесът на работа), както и връзката между тях са две важни променливи, които трябва да бъдат настроени за оптимална ефективност на NGINX. Директивата на работните процеси е изключително важна за NGINX. Основната цел на главния процес е да чете и оценява конфигурацията на работните процеси.

Работните процеси посочват на виртуалния сегмент колко ядра се назначават на всеки процесор и това позволява на механизма на модела, базиран на събитията NGINX, хармонично да управлява заявките по оптимален начин. За да разберете какъв е броят на процесорите във вашия уеб сървър, въведете следната команда.

grep processor /proc/cpuinfo | wc –l

Резултатът ще покаже броя работни процеси на ядро, което в нашия случай е 1. Това означава, че машината е с 1 ядро. Ако уебсайтът ви има по-нисък трафик, трябва да зададете работните процеси на 1 в конфигурационния файл на NGINX, за да получите оптимална производителност.

worker_processes 1;

Ако имате по-голям трафик или специален сайт за NGINX, трябва да зададете по един работен процес за всяко ядро.

worker_processes auto;

 

2. Максимизирайте работните връзки 

Работните връзки посочват броя клиенти, които NGINX може да обслужи едновременно в работните процеси. Ограничението на работната връзка по подразбиране е 768, но трябва да разберете, че всеки браузър ще отвори поне две сървърни връзки и системата NGINX ще има капацитет да поеме повече. Можете да откриете броя работните връзки с командата:

ulimit –n

При повечето машини максималният брой поддържани работни връзки е 1024. Ако резултатът от горната команда е 1024, това означава, че NGINX може да обслужва 1024 клиенти в секунда.

Сега можете да продължите нататък и да зададете максималния лимит на работните връзки до 1024. Ето стъпките за актуализиране на конфигурацията на NGINX

sudo nano /etc/nginx/nginx.conf

worker_processes 1;

worker_connections 1024;

 

3. Активирайте компресията в Gzip

Gzip е помощна програма, използвана за компресиране и декомпресиране на файлове. Приложението се поддържа от повечето клиенти и сървъри. Когато съвместим с Gzip браузър изпраща искания за ресурс, сървърът ще компресира отговора, преди да го изпрати до браузъра.

Gzip предлага чудесен начин за по-голяма ефективност и оптимизация на NGINX сървъра. По-долу ще видите лесни стъпки за активиране на Gzip в NGINX средата.

Трябва да създадете файл в /etc/nginx/conf.d/gzip.conf и да напишете следните команди в него:

 

Gzip on;

gzip_proxied any;

gzip_types text/plain text/xml text/css application/x-javascript;

gzip_vary on;

gzip_disable “MSIE [1-6]\.(?!.*SV1)”;

 

След създаването на файла, трябва да рестартирате Вашия сървър и след това ще обслужвате активите на сайта на потребителите с Gzip компресия.

 

4. Активирайте кеша за статичните файлове

Кеширането е чудесен начин да оптимизирате работата на NGINX. В рамките на вашата NGINX среда трябва да инструктирате сървъра да кешира статичните файлове на уеб страницата за по-бърз достъп. Трябва да добавите следните команди, за да кажете на сървъра ви да обслужва статично съдържание. Местоположението за тази операция е по подразбиране

 

etc/nginx/sites-available/sitename ;

 

location ~* \.(jpg|jpeg|png|gif|ico|css|js)$ {

          expires 365d;

}

Когато добавите тези команди като директиви, всички файлове с изображения, аудио и видео ще получат заглавие с изтекъл срок с дата 365 в бъдещето спрямо времето за достъп до браузъра.

 

5. Деактивирайте регистрационните файлове за достъп

За всяко действие в NGINX средата се създават лог файлове, които влияят върху производителността. Чрез деактивирането им, можете да спестите ценно място на твърдия диск и да намалите допълнителната обработка. За да деактивирате регистрационните файлове за достъп, трябва да напишете access_log off до синтаксиса access_log.

 

6. Използвайте Monitis за наблюдение на NGINX сървъра

Monitis е водещ инструмент за наблюдаване ефективността на мрежата, който ви позволява да следите отблизо NGINX сървърите. Инструментът за мониторинг предоставя от първа ръка отчет за здравето и производителността на сървърите в облачна среда. Той ви позволява да научите за потенциални проблеми преди потребителите да бъдат засегнати или да ви се оплачат. Monitis ви позволява да поддържате сървърната инфраструктура по-плавна и ефективна. По този начин премахва стреса и ви помага да се съсредоточите върху работата.

Вашият коментар

Вашият имейл адрес няма да бъде публикуван. Задължителните полета са отбелязани с *

Security code * Time limit is exhausted. Please reload the CAPTCHA.

This site uses Akismet to reduce spam. Learn how your comment data is processed.