Skocz do zawartości
  • Cześć!

    Witaj na forum RootNode - aby pisać u nas musisz się zarejestrować, a następnie zalogować. Posty pisane z kont niezarejestrowanych nie są widoczne publicznie.

Jaki serwer www do najoptymalniejszej pracy?


theqkash

Rekomendowane odpowiedzi

Testowałem ostatnio kilka serwerów www w różnych konfiguracjach i mam mieszane odczucia. Na co dzień korzystam z apache2 z mpm_event i php fpm i wydaje mi się, że pomimo tego, że nie jest to najoptymalniejszy układ świata, działa to dla mnie wystarczająco dobrze.

 

Testowałem nginx, lighttpd i hiawathę i w sumie każdy z nich ma jakieś plusy i minusy.

 

Z jakich serwerów korzystacie i w jakiej konfiguracji? Czy uważacie tą konfigurację za najbardziej optymalną?

 

Odnośnik do komentarza
Udostępnij na innych stronach

Nginx + php-fpm to obecnie najprzyjemniejsze i jednocześnie jedno z najwydajniejszych rozwiązań jakie są dostępne, oczywiście nie pod względem czasu wykonywania pojedynczego requesta, a liczbie wykonywanych requestów na sekundę.

 

Jedyne co ma możliwość być szybsze to HHVM, ale to tak eksperymentalne rozwiązanie, że na dzień dzisiejszy nigdzie poza środowiskami testowymi bym nie stawiał.

Odnośnik do komentarza
Udostępnij na innych stronach

Konkretnych liczb Ci nie dam bo zależą od wielu czynników, w tym samego skryptu PHP jak i CPU, ale w kwestii throughput do prawidłowo skonfigurowanego i zoptymalizowanego nginx + php-fpm apachem nie dojedziesz, a przynajmniej ja nie dojeżdzałem jak testowałem 2.4, czy to na workerze czy evencie. Nie, liczby nie odstawały jakoś znacząco na evencie, z tego co pamiętam to było coś koło 85% tego co wyciagał nginx, ale jednak nie udało mi się nginxa przebić w żadnym teście poza wydajnością pojedynczego requesta vs apachowy mod_php.

 

Poza tym FPM w wersji ondemand to coś cudownego jeśli chodzi o zasoby samego serwera. Skalowalność takiego rozwiązania jest dużo lepsza niż FPM w wersji dynamic czy worker/event z apache'a.

Odnośnik do komentarza
Udostępnij na innych stronach

Szczerze to nie lubię nginx, wielokrotnie jak miałem czas siadałem do niego jednak jestem dalej wierny apache.  Może dlatego że jestem starej daty i praktycznie od samego początku grzebałem w apache. Nie powiem że nginx nie jest wydajny lecz nie jest do wszystkiego i dla wszystkich w chwili kiedy trzeba ogarnąć naprawdę dożo klientów na jednej strukturze staje się problematyczny.  Apache spełnia moje oczekiwania a z obsługą php-fpm + kilka innych dodatkowych elementów naprawdę daje radę.

Lubię również lighttpd ale nie do wszystkiego. Jest kilka fajnych rozwiązań do obsługi web ale osobiście podchodzę do nich bardzo ostrożnie. Może przyczyną jest to że lubię spać spokojnie zamiast martwić się czy wszystko działa.

Ostatnio zaciekawił mnie również ten projekt: https://caddyserver.com/

Odnośnik do komentarza
Udostępnij na innych stronach

Ja też lubię spać spokojnie, dlatego ilość segfaultów na apache i to co się działo zanim jako tako wersja 2.4 w ogóle została okrzyknięta stabilną dawno mnie sprowadziło do pokochania nginxa i w życiu do apache'a już nie wrócę. Nawet jednego razu nie miałem sytuacji, w której ta konkretna usługa by mnie zawiodła.

  • Lubię 1
Odnośnik do komentarza
Udostępnij na innych stronach

Do tematu czy coś jest stabilną wersją czy nie podchodzę bardzo sceptycznie.  Jak by tak zagłębić się to sporo z tego co używamy jest dalekie do stabilności i do okrzyknięcia że coś takie jest. Mam zasadę ,której staram się trzymać że jak coś pojawia się nowego to sobie testuje. Nie jestem pewien ale mam chyba coś ponad 400 zachowanych środowisk w proxmox jako właśnie pozostałości po testach.

Masz oczywiście rację że każdy ma prawo wyboru tego właściwego dla siebie środowiska do obsługi web. Każdy opiera pewne decyzje na doświadczeniach własnych lub na bazie tego co ktoś opisał. Nie twierdzę że nie wrócę do zabawy z nginx bo jakiś czas temu nawet przygotowałem sobie pewną platformę udającą moją obecną strukturę. No ale brak czasu niestety nieubłaganie odsuwa termin tej zabawy.

Odnośnik do komentarza
Udostępnij na innych stronach

Nginx też ma małe wady i nie nadaje się wszędzie przez to. 

 

  • Brak wsparcia dla htaccess czyli na sharedzie średnio się odnajdzie. Na maszynie developerskiej też czasem wkurza szukanie regułek do testowanej aplikacji. 
  • Niektóre podstawowe funkcjonalności pojawiają się najpierw w wersji plus takie jak logi syslog czy wsparcie dla http2 push. Dopiero po jakimś czasie funkcjonalności trafiają do mainline. 

 

Odnośnik do komentarza
Udostępnij na innych stronach

Uważam, że na tak postawione pytanie można odpowiedzieć taki jaki dobrze Znasz.  Ale nikt nie napisał Apche  do PHP ( za względu na htaccess) + Nginx jako reverse proxy dla plików statycznych  - nie Polecacie takiego rozwiązania ?

Odnośnik do komentarza
Udostępnij na innych stronach

Widzę że nikt nie wspomniał o Litespeed, który często pojawia się na hostingach. Wersja Pro jest płatna i w pełni zgodna z Apache (z obsługą plików htaccess).

Natomiast openlitespeed jest open sourcowym odpowiednikiem bez ograniczeń wydajnościowych, ale bez obsługi htaccess. Za to składnię rewriteów ma zgodną z apache więc przepisanie htaccess polega głównie na dodaniu slashy.

Możesz traktować Litespeed jako Apache na sterydach. Plus ma banalnie prostą obsługę przez konsolę WWW

Odnośnik do komentarza
Udostępnij na innych stronach

2 godziny temu, nnd.newbie napisał:

Widzę że nikt nie wspomniał o Litespeed, który często pojawia się na hostingach. Wersja Pro jest płatna i w pełni zgodna z Apache (z obsługą plików htaccess).

Natomiast openlitespeed jest open sourcowym odpowiednikiem bez ograniczeń wydajnościowych, ale bez obsługi htaccess. Za to składnię rewriteów ma zgodną z apache więc przepisanie htaccess polega głównie na dodaniu slashy.

Możesz traktować Litespeed jako Apache na sterydach. Plus ma banalnie prostą obsługę przez konsolę WWW

 

Z tego co wiem, darmowa wersja raczej średniawo nadaje się na produkcję.

Odnośnik do komentarza
Udostępnij na innych stronach

13 godzin temu, SiXwishlist napisał:

Co znaczy mogę nie mogę? Czy mogę prosić o jakieś przykłady.

 

To znaczy, że nie spełnia założeń projektowych ;) Przykłady:

 

- klasycznie: hosting

 

- w pamięć zapadł mi taki jeden projekt, legacy z ogromnym długiem technologicznym: w htaccess długim na kilka tysięcy linii (!) oprócz klasycznych rewrite'ów (aczkolwiek kiepsko zrobionych, przez co powtarzanych setki razy) miał ogrom LOGIKI dostępowej tzn. to co powinno siedzieć w aplikacji i pozwalać na dostęp lub nie do jakiś treści znajdowało się w htaccess w formie rożnych zakręconych, zagnieżdżonych warunków. Normalnie mózg roz*ny ;) Nie dało się tego przenieść w prosty sposób 1:1 na nginxa.

 

3 godziny temu, Mion napisał:

Ale nikt nie napisał Apche  do PHP ( za względu na htaccess) + Nginx jako reverse proxy dla plików statycznych  - nie Polecacie takiego rozwiązania ?

 

Polecamy, przynajmniej kilkanaście razy tak ratowałem komuś dupę, kogo nie dało się szybko przenieść na nginxa a trzeba było natychmiast zadziałać. Choć potrafi popsuć krwi np. waląc błędami przy integracji z WAF czy ogólnie debugiem co jest odowiedzialne za np. timeouty.

 

Wracając do setupów:

 

Apache  + mod_lsapi (lsphp)

Apache  + php_fpm

nginx + php-fpm

lub nginx jako reverse proxy do apache

Odnośnik do komentarza
Udostępnij na innych stronach

10 godzin temu, SomeGuy napisał:

 

Z tego co wiem, darmowa wersja raczej średniawo nadaje się na produkcję.

 

Litespeed darmowy czy open? W swoim czasie były płatna wersja Enterprise i darmowa Standard. Standard miał ograniczenia wydajnościowe: do 5 domen i 50 równoległych połączeń (czy jakoś tak) i na produkcję rzeczywiście się nie nadawał. 

 

Potem powstała opensourcowa wersja OpenLitespeed i ostatecznie Standard został porzucony. OpenLitespeed nie ma ograniczeń wydajnościowych i nadaje się na produkcję. Różnica z wersją Enterprise to głównie brak wsparcia dla paneli hostingowych i plików .htaccess (chociaż wciąż zachowuje zgodność z regułami mod_rewrite).

 

Krótko mówiąc, łatwiej się z Apache'a przesiąść na OpenLitespeed niż na nginxa. A co do wydajności to zależy od  testów czy wygrywa nginx, litespeed czy inny. Ogólnie Litespeed jest jednym z najwydajniejszych serwerów.

 

 

Edytowane przez nnd.newbie
Odnośnik do komentarza
Udostępnij na innych stronach

  • 2 tygodnie później...

Z moich testów, narazie najwydajniejsze dla mnie rozwiązanie jakie udało mi się wdrożyć to nginx jako reverse proxy, do tego strony oparte o PHP kierowane są do Apache który to uruchamia PHP poprzez lsapi. Do tego odpowiedni tuning nginx + apache i działa to na prawdę fajnie. Wymaga to jednak uwagi przy konfigurowaniu, różnego rodzaju timeouty potrafią napsuć krwi. Na tandemie nginx + apache działamy od paru lat, a php poprzez lsapi mamy od mniej więcej początku roku. Tak więc można uznać to za stabilne rozwiązanie :)

W planach mam zamiar wpleść w to jeszcze varnisha.

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli ktoś sam administruje serwerem to ja nie wiem dlaczego wszyscy wpychają tego apacza :)

 

Jeśli mogę to tylko nginx z hhtp2 + php-fpm.

 

Ostatnio dokompilowałem sobie mod pagespeed, niestety często dziwnie działa i psuje działanie niektórych systemów (pewnie jak do ( y ) napisany jest kod js albo css ale mimo wszystko :) )

Jednak przy kilku projektach fajnie zoptymalizował strone (odczuwalnie dla zwykłego usera i dla google)

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Korzystając z forum, wyrażasz zgodę na: Warunki użytkowania, Regulamin, Polityka prywatności.