Forums

Skip to content

Advanced search
  • Quick links
    • Unanswered topics
    • Active topics
    • Search
  • FAQ
  • Login
  • Register
  • Board index International Gentoo Users Polskie forum (Polish) Polish OTW
  • Search

Nginx vs Apache

Rozmowy nie związane ściśle z Gentoo

Moderator: SlashBeast

Post Reply
  • Print view
Advanced search
10 posts • Page 1 of 1

Nginx czy Apache?

Nginx
3
33%
Apache
6
67%
 
Total votes: 9
Your vote has been cast.

Author
Message
soban_
l33t
l33t
User avatar
Posts: 668
Joined: Wed Aug 27, 2008 1:30 pm
Location: /home/soban
Contact:
Contact soban_
Website

Nginx vs Apache

  • Quote

Post by soban_ » Wed Jun 01, 2011 2:38 pm

Tak jak w temacie, co wolicie i dlaczego. Ostatnio duzo mysle nad przesiadka, ale nie wiem czy warto.
gg: 525600
Top
SlashBeast
Retired Dev
Retired Dev
User avatar
Posts: 2922
Joined: Tue May 23, 2006 11:50 am
Contact:
Contact SlashBeast
Website

  • Quote

Post by SlashBeast » Wed Jun 01, 2011 8:08 pm

Skoro nie wiesz czy warto, to sie nie przenos.

Nginx nie dziala tak jak apache.
Top
Zwierzak
Veteran
Veteran
User avatar
Posts: 1012
Joined: Fri Sep 19, 2003 5:24 pm
Location: /dev/null
Contact:
Contact Zwierzak
Website

  • Quote

Post by Zwierzak » Wed Jun 01, 2011 10:15 pm

Lighttpd ;)

A tak na serio to zależy co potrzebujesz. Jeżeli chcesz gotowe snippety od programistów to bierz apache. Wszyscy programiści zakładają, że wszyscy używają apache. Jeżeli potrafisz samemu skonfigurować lub potrafisz znaleźć porady to skorzystaj z innych serwerów. Ale pamiętaj, że mogą one tworzyć więcej problemów dla ciebie.
Top
soban_
l33t
l33t
User avatar
Posts: 668
Joined: Wed Aug 27, 2008 1:30 pm
Location: /home/soban
Contact:
Contact soban_
Website

  • Quote

Post by soban_ » Wed Jun 01, 2011 10:16 pm

To raczej ja tworze serwer akurat tutaj - dlatego chce uslyszec jakies zalety, ktore mnie przekonaja do zmiany. Mysle ze i tak przetestuje nginx - ale chce uslyszec Wasza opienie. Troche sie nagooglowalem o nim i ponoc jest lepszy przy wiekszej ilosci zapytan (szybszy) - no ale lubie sluchac co wychodzi w praniu.
gg: 525600
Top
Zwierzak
Veteran
Veteran
User avatar
Posts: 1012
Joined: Fri Sep 19, 2003 5:24 pm
Location: /dev/null
Contact:
Contact Zwierzak
Website

  • Quote

Post by Zwierzak » Wed Jun 01, 2011 10:28 pm

To wszystko zależy. Jeżeli masz mocne serwery to najlepiej opłaca się dobrze skonfigurowany apache. Ale to dotyczy sprzętu od samego początku skonfigurowanego mocnego serwera. Na serwerach typu VPS bardziej się opłacają lekkie serwery. Ale patrząc na serwisy od JoeMonster (Demotywatory itd.) to nawet nginx'a można zabić.
Top
SlashBeast
Retired Dev
Retired Dev
User avatar
Posts: 2922
Joined: Tue May 23, 2006 11:50 am
Contact:
Contact SlashBeast
Website

  • Quote

Post by SlashBeast » Thu Jun 02, 2011 11:00 am

Gwoli scislosci - na przykladzie demotywatorow, to nie tak, ze tam 'nginksa da sie zabic', nginx daje rade, a to, ze czasem leca bledy 502 lub 503 to z winy backendu, ponoc tam maja php, php nie ogarnia, leca timeouty. Nginx sam w sobie nie serwuje dynamicznego contentu, php robisz tam i tak po fastcgi, do tego modul proxy, uwsgi itp.

Apache to jest po prostu jakis koszmar jezeli chodzi o zasoby, ile on potrafi zjesc ramu i uzyc czasu procesora na raptem kilkaset zapytan. Znowu Apache posiada idioto-odporny mod_php, mod_perl czy mod_python, posiada .htaccess i przez to, ze jest bardzo popularny, internet jest pelen roznych poradnikow do niego.

Co do lighttpd, ma fajny syntax configu, sporo ficzerow. Ma tez wady, np. z nieznanego mi powodu, jezeli php dziala na userze joe a lightly na swoim 'lighttpd', nie wykona skryput php, po fastcgi, jezeli user lighttpd nie bedzie mial do niego praw dostepu, co jest conajmniej dziwnie biorac pod uwage, ze powinien po prostu wyslac request po fastgi z script_filename i tyle. I znowu lighttpd wyglada na martwy projekt, wersji 1.5 doczekac sie nie moza, od blisko roku nie bylo nawet jednego wydania wersji 1.4, nie szedl bym w lighttpd.

Do nginksa nie ma co podchodzic jak nie znasz dokumentacji, internet jest pelen poradnikow do niego, niektore sa tak zle, ze az strach pomyslec, ze ktos naprawde wykonywal to, co w nich jest napisane. Nginx jest super wydajny, praktycznie nie uzywa ramu, idlujac bez polaczen je ok 1.8M (na testach lighttpd w idle jadl 1.2M). W tym momencie nginx na pewnej stronie z 230 osobami online je 15M ramu.

Wszystko zalezy od zastosowan, w niektorych apache wygrywa ficzerami, w innych nginx wydajnoscia.
Top
Dagger
Retired Dev
Retired Dev
User avatar
Posts: 765
Joined: Wed Jun 11, 2003 8:21 pm
Location: UK

  • Quote

Post by Dagger » Thu Jun 02, 2011 1:33 pm

Osobiscie zaczalem przerzucac wszystkie servery z Apache na Nginx. Apache zaczal mnie dobijac zuzyciem zasobow, tym ze restart zajmuje kupe czas i openrc czesto timeouttuje, oraz tym ze od czasu do czasu po prostu przestaje dzialac i tylko restart servera pomaga (zadnych informacji w logach).

Z wstepnych testow na Zend Framework - based stronce ktora jest bardzo ciezka i wymaga duza ilosc zasobow, ruznica wydajnosci jest okolo 20% na kozysc Nginx. Uzycie pamieci Apache + mod_php VS Nginx + mod_fastcgi + php-fpm siega zaledwie 30% na kozysc Nginx (300MB nginx+php vs 1GB apache+php).

Jak SlashBeast wspomnial - glownie zalezy od potrzeb i zastosowania.
95% of all computer errors occur between chair and keyboard (TM)
Join the FSF as an Associate Member!
Post under CC license.
Top
Jacekalex
Guru
Guru
User avatar
Posts: 554
Joined: Thu Sep 17, 2009 5:18 am

  • Quote

Post by Jacekalex » Sat Jun 04, 2011 6:27 am

Nginx z php-fpm jest bardzo szybki, ale na razie (o ile mi wiadomo),nie dorobil się natywnej obsługi skryptów CGI (trzeba kombinować z zewn. skryptami, co z bezpieczeństwem ma niewiele wspólnego),
do tego konfiguracja 3x dłuższa do Lighttpd.

Co do szybkości, Nginx z php-fpm jest szybszy o okolo 15% od Lighttpd z tym samym php-fpm.
Oba działają kilka razy szybciej od Apacha 2.2, ciekawe, jak wyjdzie Apache 2.4 - ma byś serwerem przełomowym pod względem wydajności i bezpieczeństwa.

Reasumując - na nieduży lub średni serwerek dałbym Lighttpd, na jakiś kosmicznie olbrzymi Nginxa, ale przy Nginxie zostawiłbym Lighttpd (schowany za Nginx - Proxy) do skryptów CGI, i programów adminstracyjnych, jak Phpmyadmin.

W dodatku i Nginx i Lighttpd mają jedną fajną rzecz: można filtrować zapytania GET i POST bezpośrednio regexem, bez zadnych zewnętrznych modułów jak mod-security,czy rewrite, i można bardzo dokładnie filtrować dane wysyłane do serwera.
Robi się to zauważalnie prościej, niż w w Apachowym rewrite.

Pozdrawiam
8)
Top
gryf
n00b
n00b
User avatar
Posts: 50
Joined: Wed Jun 09, 2004 12:51 pm
Contact:
Contact gryf
Website

Re: Nginx vs Apache

  • Quote

Post by gryf » Tue Jun 07, 2011 3:54 pm

Nginx, bo jest mały, niezbyt łasy na zasoby, na moje skromne potrzeby wystarczający. Nie potrzebuję mod_php, pythonowe aplikacje wypycham po fcgi. Z kolei nginx potrafi być upierdliwy w konfiguracji, Apache jest bardziej "przyjazny" w tej materii.
Top
n3rd
Guru
Guru
User avatar
Posts: 328
Joined: Sat Apr 30, 2005 11:05 am

  • Quote

Post by n3rd » Mon Sep 05, 2011 4:45 pm

Apache i Ngnix to zupełnie przeciwstawne podejścia do tego, jak powinno programować się aplikacje sieciowe. Wszystko zmieniło się wraz z powstaniem procesorów wielordzeniowych - od tego czasu szybkość aplikacji coraz silniej zaczęła wynikać z tego, jak dana aplikacja potrafiła pracować współbieżnie. Ludzie z Apacha wybrali drogę tworzenia wielu wątków - niestety taka struktura aplikacji to koszmar jeżeli chodzi o synchronizację ze sobą poszczególnych wątków oraz zarządzanie nimi. Ngnix stosuje polling (np. epoll pod linuksem), który opiera się na blokowaniach procesów (lub wątków), przy czym mamy tu jednego workera na jeden rdzeń procesora oraz mechanizm, który nimi zarządza. Taka budowa pozwala znacznie efektywniej wykorzystać zasoby systemowe (i jest całkiem elegancka).

Problem zaczyna się przy bardzo dużych obciążeniach. epoll to nic innego jak struktura danych, która zawiera tzw. deskryptory zdarzeń i te deskryptory są zarządzanie przez mechanizm jądra. Niestety aplikacja działa w przestrzeni użytkownika a mechanizm epoll w przestrzeni jądra - to oznacza, że takie struktury pamięci muszą być przez cały czas kopiowane między przestrzenią jądra oraz użytkownika, co generuje niepotrzebne obciążenia jądra systemowego. I teraz należy sobie uświadomić, że mechanizmem blokowania jest najczęściej jakiś timer, który określa blokadę na określoną liczbę mikrosekund (1 us to 1 mln część sekundy). To nie będzie miało większego znaczenia, przy obciążeniach dochodzących do 10k na sekundę ale powyżej fakt zakładania blokady na kilka mikrosekund może bardzo utrudniać osiąganie lepszych wyników.

Jeżeli chodzi o ngnix vs apache, to bardziej sensownie jest zaprojektowany ngnix. Apache ma znakomite moduły poprawiające bezpieczeństwo.. i to chyba jego główna zaleta (przynajmniej w mojej opinii). Oba serwery nie są jednak tym, czym powinna być aplikacja sieciowa - gdyby były właściwie zbudowane ich wydajność wzrosłaby przynajmniej dziesięciokrotnie.

pozdrawiam,
daniel

edit: jeżeli ktoś potrzebuje super-szybkiego http, to polecam zobaczyć g-wan (niestety to nie jest open-source...)

http://gwan.ch/
"Jeśli coś jest niemożliwe do zrobienia, przychodzi ktoś kto o tym nie wie i robi to."
-- Albert Einstein

Zanim zadasz pytanie na forum, wykonaj: /etc/init.d/brain.
Top
Post Reply
  • Print view

10 posts • Page 1 of 1

Return to “Polish OTW”

Jump to
  • Assistance
  • ↳   News & Announcements
  • ↳   Frequently Asked Questions
  • ↳   Installing Gentoo
  • ↳   Multimedia
  • ↳   Desktop Environments
  • ↳   Networking & Security
  • ↳   Kernel & Hardware
  • ↳   Portage & Programming
  • ↳   Gamers & Players
  • ↳   Other Things Gentoo
  • ↳   Unsupported Software
  • Discussion & Documentation
  • ↳   Documentation, Tips & Tricks
  • ↳   Gentoo Chat
  • ↳   Gentoo Forums Feedback
  • ↳   Duplicate Threads
  • International Gentoo Users
  • ↳   中文 (Chinese)
  • ↳   Dutch
  • ↳   Finnish
  • ↳   French
  • ↳   Deutsches Forum (German)
  • ↳   Diskussionsforum
  • ↳   Deutsche Dokumentation
  • ↳   Greek
  • ↳   Forum italiano (Italian)
  • ↳   Forum di discussione italiano
  • ↳   Risorse italiane (documentazione e tools)
  • ↳   Polskie forum (Polish)
  • ↳   Instalacja i sprzęt
  • ↳   Polish OTW
  • ↳   Portuguese
  • ↳   Documentação, Ferramentas e Dicas
  • ↳   Russian
  • ↳   Scandinavian
  • ↳   Spanish
  • ↳   Other Languages
  • Architectures & Platforms
  • ↳   Gentoo on ARM
  • ↳   Gentoo on PPC
  • ↳   Gentoo on Sparc
  • ↳   Gentoo on Alternative Architectures
  • ↳   Gentoo on AMD64
  • ↳   Gentoo for Mac OS X (Portage for Mac OS X)
  • Board index
  • All times are UTC
  • Delete cookies

© 2001–2026 Gentoo Foundation, Inc.

Powered by phpBB® Forum Software © phpBB Limited

Privacy Policy

 

 

magic