În acest articol, configurarea Nginx vor fi luate în considerare, în scopul de a crește eficiența Web-Server cu sarcini grele. îmbunătățire a eficienței, se realizează prin utilizarea de lumina Nginx Web-server, care primește și procesează toate cererile din partea utilizatorilor, Apache de adaptare doar minimul necesar. Accesul direct la web-server de utilizator Apache nu primește.
Să începem cu configurația. În cazul meu ajustarea se va face pe distribuția Debian Linux 6.0.
Instalarea software-ului:
După această modificare setările de conexiune, pentru că avem nevoie pentru a rula Apache pe un port diferit. În cazul nostru - aceasta este 8080, dar puteți folosi orice alegere. Pentru a schimba liniile regula port din /etc/apache2/ports.conf fișier de configurare:
De asemenea, este necesar să se facă modificări corespunzătoare în fișierele gazde virtuale. De exemplu, creați un sample.ru gazdă virtuală.
Pentru a îmbunătăți performanța, puteți dezactiva menține conexiunea în viață. Pentru a face acest lucru, să stabilească această directivă în /etc/apache2/apache2.conf
Important. Dacă aveți o distribuție Linux nu Debian sau Ubuntu, locația fișierelor de configurare și numele lor pot varia. De exemplu, în cele mai multe cazuri, toate setările sunt stocate în fișierul de configurare /etc/apache2/httpd.conf la nivel mondial. Deci, în unele distribuții de Linux, Unix și Apache în sine poate fi localizat în alte directoare. Opțiunile sunt:
- / Etc / apache2
- / Etc / httpd
- / Usr / local / etc / apache2
- / Usr / local / etc / httpd
- / Usr / local / etc / www
- / Usr / local / apache2
- / Usr / local / httpd
- / Usr / local / www
Acestea sunt opțiunile pe care le-am întâlnit în practică, pe platforme diferite. În plus, toate setările vor furniza în legătură în Debian Linux și Linux Ubuntu, și singur a face un amendament la cazul dumneavoastră.
Crearea unei gazde virtuale în apache
Creați un nou fișier /etc/apache2/sites-available/sample.ru. În loc următorul fișier text:
Este important să nu uitați să puneți 8080 în directiva VirtualHost!
Ne intensifica gazda noastră virtuală și reporniți Apache:
REMOTE_ADDR Credincios pentru Apache
Configurare Nginx
În cazul nostru setare Nginx este limitată la cantitatea minimă de muncă necesară pentru a lucra în mod eficient numai Nginx ligamentului Apache.
Anterior, ne-am oprit suportul Apache Keep Alive. În combinație cu Nginx o astfel de măsură oferă o priprost semnificativă de performanță. Apache procesat cererea și returnează conținutul Nginx, este dezactivat și se duce la prelucrarea altor cereri, proces Nginx este angajat în mod independent, în trimiterea de rezultate pentru utilizator. proces Resurse Nginx greu consumă ca de fapt, funcționează numai cu statice. Apache, de asemenea, poate mânca o cantitate mare de resurse.
Aici este un exemplu de unul dintre proiectele mele, care are mai mult de 10 mii. De vizitatori pe zi. Interogări, în consecință, pe site-ul kollosalnoe doar numărul. Site-ul functioneaza pe un motor destul de mari consumatoare de resurse Bitrix. Un apel pentru a rupeți site-ul de la 300MB pana la 2,5 GB de memorie RAM. În cazul în care proiectul este pornit fără Front-end, site-ul cu volumul de muncă actual va încetini în fum, în cazul în care, la toate, va fi capabil de a procesa solicitările. Ceea ce obținem ca rezultat al grămadă de lucru. Serverul este suficient de puternic, astfel încât solicitările chiar solicitante sunt procesate instantaneu. Apache procesarea cererii trimite imediat conținutul Nginx și a lansat pentru procesarea următoarea cerere. Nginx, procesarea solicitării la o anumită pagină, este deja folosind toate 0,5-2Mb RAM. O diferență semnificativă! Datorită acestui fapt, proiectul încărcat este destul de o viață normală. Desigur, în acest exemplu, există încă caracteristici de configurare a serverului MySQL, dar subiectul MySQL configurare este dincolo de domeniul de aplicare al acestui articol. Asigurați-vă că pentru a face un articol pe acest subiect și setările de bază MySQL pentru lucrul cu Bitrix pe proiecte mari.
Apropo, vorbind de Bitrix, setările tematice Front-end pe servere cu site-uri sub Bitrix este extrem de relevant, mai ales în cazul în magazin online implementat pe acest CMS. Cu toate Bitrix greoaie, CMS consideră că acest lucru este câștigă popularitate, deoarece are o mulțime de programe de completare pentru a lucra cu 1C: Enterprise. Partea administrativă este destul de prietenos pentru utilizator, mai ales în comparație cu CMS distribuit sub licența GPL. programatori 1C poate crea descărcare a mărfurilor din 1C: Enterprise în oricare dintre secțiuni, precum și cu orice parametri ghidat de un 1C standardelor de schimb de date.
Deci, trece direct la configurarea.
Principalul fișier de configurare Nginx /etc/nginx/nginx.conf
De fapt, nu face modificări minime. În cazul în care unele directive nu au suficient, pur și simplu adăugați-le la secțiunile corespunzătoare ale fișierului. Doar de mai jos voi explica scopul unor directive și valorile lor.
Conexiune evenimente de prelucrare Metode Directiva secțiunea de utilizare
Odată cu alegerea metodelor de aplicare trebuie să fie atent. Diferite metode sunt susținute de sisteme de operare diferite. nginx sprijină diferite metode de procesare a compușilor. Dacă există mai multe metode, Nginx alege, de obicei, cea mai eficientă metodă disponibilă pe platforma. Cu toate acestea, metoda de procesare a conexiunii poate selecta în mod explicit, dacă este necesar prin directiva de utilizare. Dacă nu sunteți siguri, este mai bine să dezactivați directiva la toate.
Următoarele metode de compuși de tratament:
- selectați - metoda standard. Modul de a sprijini această metodă este colectată în mod automat, în cazul în care o metodă mai eficientă nu se găsește pe platforma. Puteți activa sau dezactiva acest modul prin utilizarea parametrilor -with-select_module și -fără-select_module.
- poll - metoda standard. Modul de a sprijini această metodă este colectată în mod automat, în cazul în care o metodă mai eficientă nu se găsește pe platforma. Puteți activa sau dezactiva acest modul prin utilizarea parametrilor -with-poll_module și -fără-poll_module.
- kqueue - o metodă eficientă folosită în FreeBSD 4.1+, OpenBSD 2.9+, NetBSD 2.0, și Mac OS X. În multe ghid vorbitor de limbă rusă pentru configurarea Nginx ca Front-end pentru indicația comună Apache a acestei metode special, deoarece cele mai multe articole traduse dully și scrisă inițial adminii FreeBSD sau OpenBSD.
- epoll - o metodă eficientă folosită în Linux 2.6+. În unele distribuții mai vechi, cum ar fi SuSE 8.2, există patch-uri pentru a sprijini kernel epoll 2.4.
- rtsig - semnale în timp real, o metodă eficientă, folosită în Linux 2.2.19+. În mod implicit, coada de evenimente la nivel de sistem poate stoca până la 1024 de semnale. Pe serverele ocupat poate fi necesară pentru a crește dimensiunea cozii prin utilizarea unui nucleu parametru / proc / sys / kernel / rtsig-max. Cu toate acestea, deoarece Linux 2.6.6-mm2, acest parametru nu există nici un proces pentru fiecare spiră semnale separate, a căror dimensiune este limitată prin RLIMIT_SIGPENDING și pot fi modificate prin worker_rlimit_sigpending.
- / Dev / sondaj - metodă eficientă utilizată în Solaris 7 11/99 +, HP / UX 11.22+ (eventport), IRIX 6.5.15+ și Tru64 UNIX 5.1A +. În cazul în care coada este plin, Nginx aruncate înapoi și începe să proceseze conexiuni folosind metoda sondaj, atâta timp cât situația normalizează.
- eventport - porturi de eveniment, o metodă eficientă utilizată în Solaris 10.
Configurarea o gazdă virtuală pentru Nginx
Aproape de Nginx, ca Apache are propriile sale gazde virtuale. Prin urmare, pentru site-ul nostru, avem nevoie pentru a specifica sample.ru gazdă virtuală. Creați fișiere /etc/nginx/sites-available/sample.ru. Conținutul fișierului: Put
Acum activează gazda virtuală și repornirea Nginx:
Rezultatul stabilirii Nginx ca Front-end pentru Apache
Dacă este făcută corect, un buchet ar trebui să câștige. Încărcate pe proiecte efectul va fi vizibil imediat.