Serwer WWW oparty o open source

Szukałem statystyk, ile procentowo serwerów www dla aplikacji web jak również stron internetowych stoi na rozwiązaniach open source. Statystyki na które trafiłem wyglądają następująco:

Źródło: https://w3techs.com/technologies/overview/web_server/all

Wygląda więc na to, że rozwiązania open source opanowały serwery web. Postaram przyjrzeć się po kolei najpopularniejszym używanym rozwiązaniom. Na początek małe wyjaśnienie, czym jest serwer WWW.

Przyjrzyjmy się definicji serwera web, czym jest serwer WWW? Za Wikipedią:

„Serwer WWW (ang.) web server – program działający na serwerze internetowym, obsługujący żądania protokołu komunikacyjnego HTTP. Z serwerem WWW łączy się, poprzez sieć komputerową, przeglądarka internetowa, będąca jego klientem, aby pobrać wskazaną stronę WWW.”
Źródło: https://pl.wikipedia.org/wiki/Serwer_WWW

Upraszczając – serwer www jest aplikacją działającą na serwerze dostępną po protokole HTTP dostarczającą w odpowiedzi na zapytanie treść strony www.

A teraz  po kolei przyjrzyjmy się najbardziej popularnym rozwiązaniom open source dla serwerów web.

  • Absolutnym nr 1 w naszych statystykach jest Apache HTTP Server Project z udziałem 50,6% w światowym internecie. Czyli troszkę więcej niż połowa wszystkich stron internetowych i aplikacji webowych stoi właśnie na Apache.
    Projekt Apache HTTP Server został uruchomiony w 1995 roku i już od kwietnia 1996 r. stał się najpopularniejszym serwerem web’owym w Internecie. Cały projekt prowadzony jest przez „The Apache Software Foundation”. Jak podają sami twórcy – projekt przyjął model zarządzania nazywany „merytokracją”, czyli im więcej wniosłeś pracy do projektu tym więcej masz do powiedzenia w jaką stronę ma iść dalej projekt. Tylko osoby aktywnie biorące udział w projekcie mają prawo głosować nad zmianami.
    Strona projektu: https://httpd.apache.org/
  • Numerem 2 w statystykach jest NGINX z udziałem 32% serwerów WWW w całym Internecie.
    NGINX (wymawiany jako engine x) swoją premierę miał w 2004 roku
    a stworzony został przez rosyjskiego programistę Igora Sysoeva i do dnia dzisiejszego nadzór nad projektem jest prowadzony przez jego firmę Nginx Inc. Poza serwerem www NGINX może być również serwerem proxy. W NGINX zaimplementowano rozwiązania równoważnego obciążenia – load balancing. NGINX licencjonowany jest na zasadach licencji BSD skupiającej się na prawach użytkownika. Licencja BSD jest bardzo liberalna, zezwala nie tylko na modyfikacje kodu źródłowego i jego rozprowadzanie w takiej postaci, ale także na rozprowadzanie produktu bez postaci źródłowej czy włączenia do zamkniętego oprogramowania, pod warunkiem załączenia do produktu informacji o autorach oryginalnego kodu i treści licencji. Ciekawostką jest fakt, że NGINX powstał jako odpowiedź na problem C10k.
    Strona projektu: https://nginx.org/en/

Czyli Apache + NGINX mają ponad 80% udział. Jest to imponujący wynik.

  • Numer 3 to Apache Tomcat. Działa będąc serwletem Javy umieszczonym w kontenerze. Upraszczając kontener aplikacji jest serwerem umożliwiającym uruchamianie aplikacji internetowych. Tomcat rozwijany jest przez The Apache Software Fundation. W roku 2005 projekt w ramach Apache został rozdzielony i stał się samodzielny.
    Strona projektu: https://tomcat.apache.org/
  • Kolejne na podium są Lighttpd oraz Node.js
    Lighttpd (wymawiany lightly) również korzysta z modelu licencjonowania BSD tak jak NGINX i działa mniej więcej na 0,1% serwerów www. Twórcy projektu chwalą się niskim zapotrzebowaniem na zasoby.
    Strona projektu: http://www.lighttpd.net/

Node.js jest środowiskiem uruchomieniowym zaprojektowanym do tworzenia skalowalnych aplikacji internetowych, szczególnie serwerów www napisanych w języku JavaScript.
Strona projektu: https://nodejs.org/en/

Zakończenie:
Widać, że rozwiązania Open Source królują jako serwery www. Jeżeli szukasz rozwiązania dla siebie, polecam szczególnie LAMP (Linux, Apache, MySQL, PHP) lub LEMP (Linux, NGINX, MySQL, PHP). Są to bardzo wygodne „stosy” aplikacji dostępne w managerach pakietów, przygotowano bogatą dokumentację i wokół których powstała zintegrowana społeczność chętna do pomocy.