A szerver egy folyamatosan futó számítógép, amely kéréseket fogad és válaszokat küld. Ha megnyitsz egy weboldalt, a böngésződ egy szerverre küldi a kérést, amely visszaküldi az adatokat.
A szerver nem más, mint egy speciális számítógép, amely szoftverek segítségével kérés–válasz (request–response) alapon kommunikál a kliensekkel (böngésző, mobilapp stb.). Egy fizikai gépre akár több ezer kérés is érkezhet másodpercenként.
Amikor begépeled a weboldal címét a böngésződbe, egy sor automatikus lépés indul el – mindez tipikusan 50–300 ms alatt zajlik le.
A Load Balancer (forgalomelosztó) a beérkező kéréseket több szerver között osztja el, hogy egyetlen gép se legyen túlterhelve. Ez biztosítja a magas rendelkezésre állást (HA). Ha az egyik szerver leáll, a többi átveszi a forgalmat.
Az OSI modell (Open Systems Interconnection) egy szabványos keretrendszer, amely leírja, hogyan kommunikálnak a hálózati eszközök egymással, 7 rétegre bontva a folyamatot.
Ha valami nem működik a hálózaton, az OSI modell segít diagnosztizálni, melyik rétegen van a hiba. Pl. ha a fizikai kábel el van szakadva, az 1. réteg a hibás. Ha a DNS nem oldja fel a nevet, az a 7. réteg problémája. A webfejlesztők főleg a 4–7. rétegekkel dolgoznak.
A szerver teljesítményét a processzor (CPU) és a memória (RAM) határozza meg. A monitorozás elengedhetetlen a bottleneck-ek (szűk keresztmetszetek) megtalálásához.
Ha a CPU tartósan 80% felett van, skálázni kell: vagy erősebb gépet kell venni (vertikális skálázás), vagy több szervert kell párhuzamosan futtatni (horizontális skálázás). A modern felhőszolgáltatók (AWS, Azure, GCP) auto-scaling megoldásokat kínálnak.
Egy valós webalkalmazás mögött komplex hálózati infrastruktúra áll. Az alábbi térképen látható, hogyan kapcsolódnak össze a rendszer csomópontjai.
A produkciós infrastruktúrában a szervereket tűzfal (firewall) védi. A DB szerver soha nem érhető el közvetlenül az internetről – csak a belső app szerveren keresztül. A HTTPS (TLS) titkosítja az adatot az átvitel során, a DDoS elleni védelem pedig megakadályozza a túlterheléses támadásokat.