Skocz do zawartości

Welcome to RootNode

Welcome to RootNode, like most online communities you must register to view or post in our community, but don't worry this is a simple free process that requires minimal information for you to signup. Be apart of RootNode by signing in or creating an account.
  • Start new topics and reply to others
  • Subscribe to topics and forums to get email updates
  • Get your own profile page and make new friends
  • Send personal messages to other members.

  • 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?


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 odpowiedzi
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 odpowiedzi
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 odpowiedzi
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 odpowiedzi
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 odpowiedzi
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 odpowiedzi
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 odpowiedzi
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 odpowiedzi
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 odpowiedzi
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 odpowiedzi
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 odpowiedzi
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 odpowiedzi
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 odpowiedzi
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 odpowiedzi
Udostępnij na innych stronach

Dołącz do dyskusji

Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.

Gość
Dodaj odpowiedź do tematu...

×   Wklejono zawartość z formatowaniem.   Usuń formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Odnośnik został automatycznie osadzony.   Przywróć wyświetlanie jako odnośnik

×   Przywrócono poprzednią zawartość.   Wyczyść edytor

×   Nie możesz bezpośrednio wkleić obrazków. Dodaj lub załącz obrazki z adresu URL.

  • Podobna zawartość

    • Przez kkw
      Hej,
       
      Korzystam z Debiana 9.0 oraz Apache 2.4.25. Chciałbym włączyć HTTP/2, ale korzystam jednocześnie z mod_ruid2. Problem w tym, że mod_http2 nie jest kompatybilny z mpm_prefork, zaś mod_ruid2 jest kompatybilny tylko z mpm_prefork (mam tu na myśli mody mpm_*). Jak rozwiązać ten węzeł nie tracąc funkcjonalności mod_ruid2?
    • Przez Mion
      Napotkałem niespodziewany porblem z działaniem reguł w .htaccess i modrewritte dla  Apache/2.4.
       
      A mianowicie jest sobie reguła:
      #Server version: Apache/2.4.25 (Debian) <FilesMatch "\.(htaccess|htpasswd|ini|phps|json|log|sh)$"> Order Deny,Allow Deny From All </FilesMatch> RewriteEngine On RewriteBase / RewriteRule ^(?:application|vendor|logs)\b.* - [F,L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_URI} !(\.css|\.js|\.png|\.jpg|\.gif|\.svg|\.jpeg|\.ttf|\.eot|\.woff|robots\.txt) [NC] RewriteRule ^ index.php [QSA,L] <FilesMatch  ... >  działa w ten sposób, że jeśli wywołujemy plik  żądaniem HTTP /composer.json to powinie być zwrócony status: 403 Forbidden .
      RewriteRule ^(?:application|vendor|logs)\b.* - [F,L] Przy wywołaniu  jakiś katalogu np  /vendor/ flaga - [F,L] powinna zwrócić 403 Forbidden a flaga [L] zakończyć działanie... Podobnie nie powinna być wykonana osttsnia reguła czyli jeśli wywołujemy plik graficzncy, js, css itd...   I tak się dzieje jeśli nie ma ostatniej reguły od  "MVC"  przepisującej wszystko na index RewriteRule .* index.php [PT,QSA,L] 
       
      Jeśli jest ta reguła, to nie ma oczekiwanego Forbidden  tylko wywołanie index.php
       
      Nie rozumiem tego. Dla Apache 2.2 działa zgodnie z oczekiwaniem. 
       
       
       
       
       
    • Przez SomeGuy
      Cześć,
      W poprzednim wątku pisałem o znanym mysqltuner, i tak mnie natknęło, bo nigdy tego nie sprawdzałem - czy istnieje alternatywa dla Apache.
       
      Apache2Buddy
      https://github.com/richardforth/apache2buddy
       
      Sam jeszcze tego nie testowałem, ale zamierzam. Ktoś może miał już zaszczyt "użyszkodnikować" to narzędzie i może coś o nim powiedzieć?
  • Ostatnio przeglądający   0 użytkowników

    Brak zarejestrowanych użytkowników przeglądających tę stronę.

×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

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