konto usunięte

Temat: Powody przesiadki z Apache

jakie ?
Tomasz Zadora

Tomasz Zadora programuję

Temat: Powody przesiadki z Apache

Większa wydajność, mniej zasobów pożera, szybciej działa i to w sposób zauważalny. Dzięki temu wystarcza o wiele tańszy serwer do obsługi serwisów internetowych niż w przypadku korzystania z apache.

Wcześniej mając apacha i serwis gdzie trochę korzystam z AJAXA, każde wywołanie ajaxa trwało zauważalnie dłużej niż przy nginx-ie.

Jak sam autor, Igor Sysoev pisze, serwer minimalizuje liczbę operacji kopiowania i obsługuje requesty w oparciu o niskopoziomowe zdarzenia w linuxie (epoll, kqueue).

Na sieci jest mnóstwo benchmarków i artykułów na ten temat, frazy wyszukiwania: "nginx performance", "nginx vs apache", np.: http://www.joeandmotorboat.com/2008/02/28/apache-vs-ng... (już dość stary ale ciekawa dyskusja w komentarzach).

Albo tutaj: http://www.webandblog.com/reviews/apache-vs-nginx-test... gdzie wyszło, że przy większym obciążeniu, response time w nginxie nawet się zaczyna lekko zmniejszać :)

Stabilność - nginx jest często porównywany do lighttpd, niestety lighttpd ma tendencje do wycieków pamięci i zwisów przy dużym ruchu, w nginxie czegoś takiego nie zauważono jak na razie.

Nginx świetnie korzysta z procesorów wielordzeniowych.

Prostota konfiguracji - dyrektyw nie jest dużo, ale wszystko jest inteligentnie przemyślane. Pliki konfiguracyjne do serwerów wirtualnych nie są takie duże jak przy apache, szybko można się w nich połapać.

Przewagą apacha jest większa ilość modułów (do nginxa też są ale mniej), do nginxa nie ma jeszcze modułu PHP, jest tylko możliwość odpalania przez cgi (fast-cgi).

Do Apache jest zdecydowanie więcej dodatkowego oprogramowania - takiego jak chociażby panele hostingowe (PLESK, cPanel), coś czego nginx dopiero musi się dorobić.

Po za tym nginx nie obsługuje plików .htaccess - jednak posiada np. coś w rodzaju mod_rewrite jako podstawowy moduł "core". Składnia jest bardzo podobna, pierwsze przepisanie kilku dyrektyw z mod_rewrite na nginxa zajęło mi około 30 min. (wliczam w to czytanie dokumentacji - http://wiki.nginx.org/NginxHttpRewriteModule).

Nginx ma zresztą wbudowane inne fajne rzeczy - jak np. możliwość ograniczenia jednoczesnych połączeń z jednego IP. Oczywiście w sensie ograniczenia połączenia do danej lokacji a nie w sensie nawiązania połączenia sieciowego do serwera - może to być pomocne w różnych sytuacjach.

Nginx posiada też wiele innych przydatnych dyrektyw związanych z timeoutami i buforami, prawdopodobnie bardziej rozbudowanych niż w apache, które pozwalają przynajmniej częściowo walczyć z różnymi rodzajami ataków na serwisy www bez potrzeby instalacji dodatkowych modułów.

Na koniec - nginx może współpracować z Apache jako odwrotne proxy (jest to dość proste do konfiguracji), odciążając go od serwowania statycznych plików, można więc z niego korzystać połowicznie.Tomasz Zadora edytował(a) ten post dnia 13.10.10 o godzinie 21:46
Piotr Kuliński

Piotr Kuliński Programista Drupal -
Web Developer

Temat: Powody przesiadki z Apache

Lekki, szybki, stabilny. Daje radę zarówno na starych maszynach 400MHz + 128M RAM, jak i najnowszych z procesorami wielordzeniowymi. Wady? Spróbuj odpalić Nginx + PHP FastCGI + MySQL + WebDAV, a konkretnie - obsługę plików w eGroupWare:)

Temat: Powody przesiadki z Apache

Zdecydowanie szybszy niż Apache. Zjada mniej zasobów. Świetnie spisuje się z Xcache.
Piotr Kuliński

Piotr Kuliński Programista Drupal -
Web Developer

Temat: Powody przesiadki z Apache

W NGINX-ie najciekawsze jest to, że od mojej ostatniej wypowiedzi 13.11.2010 nic się nie zmieniło :)

P.S. Po prostu działa.
Robert W.

Robert W. IT, Amazon

Temat: Powody przesiadki z Apache

Zdrstwujtie :) NGINX dla mnie liczy się wydajność i małe zużycie zasobów, nauka trochę kosztuje, ale jak już ktoś zakosztuje to nie wiem czy szybko zobaczy powrót do apache czy innych serwerów.
Obecnie używam go do testowania cms i framworków jak się zachowuje, oczywiście także z różnymi kobinacjami.
Dobrze ze się ruskiego uczyłem bo bardzo mi dokumentacja przypadła :D
Pozdro



Wyślij zaproszenie do