Serwer – co to jest?

Kwestia serwera zawsze pojawia się, gdy chcemy uruchomić swój blog, stronę czy sklep internetowy – ale co to właściwie jest?

Serwer to komputer

Na zdjęciach ofert hostingowych serwery to szafy zapchane migającymi diodami z wychodzącymi gdzieś z tyłu kablami. Jednak z definicji serwerem może być dowolny komputer wyposażony w odpowiednie oprogramowanie i dostęp do sieci Internet. „Zwykły” domowy komputer też z powodzeniem może pełnić rolę serwera. Oczywiście mniej wydajnego niż przystosowane do tego (wyspecjalizowane) komputery w serwerowni.

Parametry sprzętowe serwera

Skoro wiemy już że serwer to praktycznie nic tylko znany nam komputer, pora spojrzeć na to, co kryje się w środku. W przeciwieństwie do domowego komputera, serwer pod stronę/aplikację internetową (tzw. hosting) będzie posiadał niektóre komponenty o wiele mocniejsze (np. pamięć RAM) a niektórych nie będzie posiadał wcale, bo ich nie używa (np. karta graficzna). W ofertach spotkamy się z poniższymi parametrami sprzętowymi:

  • Procesor (CPU) – wpływa na szybkość uruchamiania i wykonywania oprogramowania bloga, strony lub sklepu,
  • Pamięć operacyjna (RAM) – definiuje ilość miejsca w pamięci dla uruchomionego oprogramowania, np. ile dany program może przetwarzać danych „na raz”,
  • Przestrzeń dyskowa – zapewnia miejsce dla plików z oprogramowaniem a także zasobów takich jak zdjęcia, dokumenty, itp.,
  • Baza danych – zapewnia miejsce dla uporządkowanych danych, niezbędnych do działania oprogramowania. Zwykle przechowuje wszystkie informacje tekstowe które widzimy na blogu, stronie lub sklepie.

Równie ważnym jak parametry sprzętowe jest wskaźnik SLA (gwarancja świadczenia usługi), czyli przez ile czasu (np. w roku) firma hostingowa gwarantuje, że serwer będzie dostępny. Przykładowo, SLA na poziomie 99% może oznaczać, że w ciągu roku serwer może być niedostępny aż 86 godzin, czyli prawie 4 dni. Obecnie wysokie SLA jest standardem, ale warto mieć na uwadze że istnieje taka możliwość. Szczególnie przy podejrzanie tanich ofertach.

Serwer to program

Komputer o odpowiednich parametrach sprzętowych to nie wszystko czego potrzebujemy by faktycznie nazwać go serwerem. Powinno być na nim zainstalowane odpowiednie oprogramowanie, które ma wpływ na to jak działa (stabilnie i szybko). Do wyboru jest wiele rozwiązań, ale najpopularniejsze z nich to tzw. LAMP, czyli:

  • Linux – system operacyjny komputera,
  • Apache – program-serwer, przyjmuje i przetwarza żądania. Możemy modyfikować jego ustawienia w pliku .htaccess,
  • MySQL – program-baza danych, przechowuje dane i pozwala na nich wykonywać różne operacje (np. odczyt czy modyfikacje),
  • PHP – język skryptowy w którym napisana jest strona lub sklep ( tj. aplikacja internetowa)

Taki zestaw technologii jest najbardziej rozpowszechniony – przemawia za tym jego niski koszt oraz ogólnodostępność. Skoro jest tani, czy jest on gorszy i ustępuje innym, o wiele droższym rozwiązaniom? Nie – ale to oczywiście zależy od oczekiwań użytkownika.

Wymienione programy – serwer Apache oraz baza danych MySQL (MariaDB) – spotkamy najczęściej. Pokrewnymi rozwiązaniami z jakimi możesz się spotkać to serwery Nginx oraz LiteSpeed, bazy danych PostgreSQL, SQLite (to specyficzna baza danych, jej zawartość jest przechowywana w jednym pliku) lub Mongo.

Dostęp do serwera

Jako właściciel strony lub sklepu, powinieneś posiadać dostęp do swojego serwera. Jeśli wybrałeś hosting, zwykle będzie to standardowy dostęp FTP (dostęp do plików strony na zasadzie dostępu jak do dysku sieciowego) oraz PhpMyAdmin (dostęp do bazy danych). Przy ofertach VPS i wyższych, dostęp będzie również do konsoli serwera, czyli do systemu operacyjnego i jego składników. Szczególnie przydatne gdy potrzebujesz wykonać na serwerze jakieś nietypowe akcje, nie znajdujące się w panelu serwera (np. instalacja/konfiguracja dowolnego oprogramowania).

Jak to jest zbudowane?

Choć serwery przypominają komputery domowe, w celu maksymalizacji najbardziej pożądanych cech wymienionych we wcześniejszym punkcie ich budowa nieco się różni.

Mogą to być samodzielne jednostki, w formie bardzo wydajnych komputerów z silnym procesorem, dużą ilością pamięci RAM oraz pojemnymi i wydajnymi dyskami twardymi. Najbardziej przypominają domowy komputer i jako takie są oferowane przez firmy hostingowe jako Serwery Dedykowane.

Częściej jednak bardziej opłacalne (stosunek ceny do wydajności) jest utworzenie osobnego komputera z procesorami i pamięcią RAM (serwer obliczeniowy), osobnego komputera z dużą ilością dysków (macierz dyskowa) oraz kolejnego komputera wyspecjalizowanego w bazie danych (serwer bazy danych). Następnie można połączyć kilka takich komputerów-serwerów tworząc jeden duży i drogi ale wydajny komputer. Taka maszyna pozwala firmom hostingowym oferować Hostingi lub Serwery VPS.

Niezależnie od tego, czy jest to samodzielna jednostka czy maszyna złożona z wyspecjalizowanych komputerów, aby można nazwać ją serwerem musi być podłączona do sieci Internet np. przy pomocy światłowodów. Dzięki temu możemy z naszego domu lub pracy połączyć się do takiego serwera i np. przeczytać ten artykuł, sprawdzić skrzynkę mailową czy obejrzeć nasz ulubiony serial 🙂

Zobacz również co to jest chmura (ang. cloud).