NOC online · 24/7Longview, TX · +1 323 412 0665
KinetikatechServers · Security · Websites
PL

Serwery Web

nginx vs Apache: który serwer obsługuje które obciążenie?

nginx i Apache to dwa silniki, na których można zbudować stos hostingowy, a walka kończy się w momencie nazwania obciążenia. nginx to sterowana zdarzeniami, zajmująca niewiele miejsca maszyna do obsługi treści statycznych i odwrotnego proxy; Apache to bogaty w moduły serwer aplikacji, którego katalogi zastępują, a ekosystem obsługuje hosting współdzielony. To jest uczciwa tabela decyzyjna stojąca za obydwoma dedykowanymi artykułami.

Kluczowe punkty

  • Model współbieżności decyduje o przewadze: asynchroniczna pętla zdarzeń nginx obsługuje tysiące jednoczesnych połączeń z kilkoma procesami roboczymi, dlatego dominuje w warstwach obciążonych statycznie i z odwrotnym proxy; MPM zdarzeń Apache wypełnia większość tej luki, ale nadal przydziela więcej na połączenie na tym samym sprzęcie.
  • Filozofia konfiguracji zderza się: Apache obsługuje .htaccess i nadpisania poszczególnych katalogów (wygoda przy zakładaniu hostingu współdzielonego), podczas gdy konfiguracja nginx jest płaska dla każdej witryny, zawiera pliki z dyscypliną ponownego ładowania; efekt dnia codziennego zależy od zespołu, kto i gdzie edytuje konfiguracje.
  • Stos hybrydowy jest legalny, a nie wycofywanie się: nginx z przodu jako terminator TLS i serwer statyczny, Apache z tyłu aplikacji, to sprawdzony w boju kształt, który zachowuje narzędzia htaccess, jednocześnie przechwytując wydajność brzegową nginx; koszt to kolejny poziom rozwiązywania problemów i monitorowania.
  • Tam, gdzie każdy silnik wygrywa bezpośrednio: nginx wygrywa z proxy wymagającym dużej liczby połączeń, pracą na krawędzi utrzymującą aktywność i powolnym wyczerpujeniem klientów; Apache wygrywa z konfiguracją poszczególnych katalogów, kompatybilnością starszych modułów i współdzielonym hostingiem klasy mod_security/mod_php, gdzie żaden inny ekosystem nie jest tak dojrzały.
  • LiteSpeed ​​to trzecia opcja, po którą sięga wiele hostów (omawia ją nasz dedykowany artykuł): zgodność Apache typu drop-in z współbieżnością sterowaną zdarzeniami, licencja na rdzeń, więc istnieje środkowa ścieżka „wymień Apache, zachowaj konfigurację” dla ekonomiki hostingu współdzielonego.
  • Procedura decyzyjna, która sprawdza się w całej naszej kategorii serwerów internetowych: nazwij obciążenie (nginx na brzegu; Apache za aplikacjami obciążającymi htaccess), wyraźnie określ obie role w przypadku hybrydy, porównaj swój własny ruch (nie testy porównawcze z czasopism) i pamiętaj, że jest to jedna decyzja, którą możesz powtarzać, ponieważ oba silniki szczęśliwie współistnieją.

Notatka z praktyki

Klient, który nauczył nas nawyku stosu hybrydowego: nginx z przodu dla TLS i statyki, Apache z tyłu, niosący dwanaście lat wiedzy o htaccess, której nikt nie odważył się przepisać. Szczera odpowiedź nie brzmiała „migracja do nginx”, lecz „podaj obciążenie pracą według poziomu”. Nadal działają w tym kształcie, bez entuzjazmu i odznaczają się dbałością o czas pracy.

Częste pytania

Czy w ogóle musimy wybierać?

Nie: odwrotne proxy przed serwerem aplikacji ma normalny, nowoczesny kształt. Jedyną prawdziwą decyzją jest to, który silnik gdzie pójdzie; prowadzenie obu jest standardową praktyką, a nie przyznaniem się do porażki.

Co jest szybsze dla WordPressa?

Dzięki dobrym warstwom buforowania wszystkie trzy (nginx, Apache, LiteSpeed) dobrze obsługują WordPress; kolejność kończenia naszych testów sprowadzała się do dostrajania pamięci podręcznej, a nie silnika. Wybór silnika ma większe znaczenie na poziomach brzegowych i proxy niż za pamięcią podręczną.

Czego łatwiej się nauczyć?

Obu można się nauczyć w ciągu tygodnia w przypadku podstawowego hostingu wirtualnego i TLS; tarcia są różne: dokumentacja Apache jest bardziej znana weteranom branży, konfiguracja Nginx jest krótsza, ale wcześniej udostępnia pokrętła proxy.

Czy istnieją różnice w zabezpieczeniach, które mają znaczenie?

Obydwa zawierają CVE i oba są bezpieczne od razu po wyjęciu z pudełka w utrzymywanych wersjach; powierzchnią ryzyka jest powierzchnia konfiguracyjna, kultura .htaccess i starsze moduły dla Apache, moduły skompilowane przez strony trzecie oraz błędy w kolejności konfiguracji dla Nginx. Szybkość aktualizacji ma większe znaczenie niż marka silnika.

Jak Kinetikatech pomaga w serwery web

Szczerze mówiąc, większość zespołów trafia do nas po samodzielnych próbach: Configuration, optimization and security of web servers in production and development environments. Nasza usługa Optymalizacja prędkości i Zarządzanie serwerami istnieje po to, aby nie musieli Państwo poznawać serwery web na własnych błędach — zajmujemy się konfiguracją, monitoringiem i niespodziankami o 3 w nocy.

Porozmawiaj z inżynierem

Problem z serwerem? Zhakowana strona? Wolna witryna?

Incydenty krytyczne w 30 minut — 24 godziny na dobę, 7 dni w tygodniu.

Poproś o wsparcie alarmowe support@kinetikatech.com