Vodniki

Kaj je strežnik? Vodnik v preprostem jeziku za graditelje aplikacij

Strežnik je računalnik — ali program, ki teče na njem —, ki čaka na zahteve in nanje odgovarja. Ko odprete spletno mesto, vaš brskalnik (odjemalec) pošlje zahtevo prek interneta, nekje strežnik pa pošlje nazaj stran, slike ali podatke. Vsaka aplikacija, ki jo uporabljate, od e-pošte do spletnega bančništva, se zanaša na strežnike, ki to počnejo milijonkrat na dan.

Zakaj so strežniki pomembni, ko gradite z umetno inteligenco

Ko vam gradnik z umetno inteligenco zgradi aplikacijo, del kode teče v brskalniku obiskovalca, del pa običajno teče na strežniku. Strežniški del opravlja stvari, ki jim brskalnik ne more zaupati ali jih ne more sam narediti:

  • Shranjevanje in nalaganje podatkov iz baze podatkov.
  • Hranjenje skrivnosti, kot so ključi API-jev za plačila ali umetno inteligenco, ki nikoli ne smejo doseči brskalnika.
  • Preverjanje dovoljenj — zagotavljanje, da uporabnik lahko vidi in spreminja le svoje zapise.
  • Komunikacija z drugimi storitvami: zaračunavanje kartice, pošiljanje e-pošte, klicanje modela umetne inteligence.

Razumevanje, kaj počne strežnik, vam pomaga razumeti, kje dejansko živijo pravila vaše aplikacije, zakaj nekatere spremembe zahtevajo ponovno objavo in za kaj plačujete, ko gostite aplikacijo. Za delitev med obema polovicama glejte frontend proti zaledju.

Vsakdanja primerjava

Strežnik je kot uslužbenec za pultom na pošti. Ne hodi iskat strank; čaka. Stranka (odjemalec) pride s prošnjo — »pošljite ta paket«, »imam kakšno pošto zame?« — uslužbenec jo obdela in vrne rezultat. En uslužbenec lahko postreže mnoge stranke drugo za drugo, zaposlena pošta pa odpre več okenc.

Pošta ima tudi pravila, ki jih stranka ne more prezreti: za prevzem paketa morate pokazati osebno izkaznico. To je v aplikaciji vloga strežnika — brskalnik lahko zahteva karkoli, a strežnik odloči, kaj dobi.

Kako zahteva pride do strežnika

Ko nekdo obišče https://bookings.example.com/schedule:

  1. Iskanje DNS. Brskalnik vpraša sistem domenskih imen, na kateri IP naslov kaže bookings.example.com. Glejte kako delujeta domene in DNS.
  2. Povezava. Brskalnik se poveže s tem naslovom na vratih 443 za HTTPS in vzpostavi šifrirano povezavo. Glejte kaj je HTTPS.
  3. Zahteva. Pošlje HTTP zahtevo: GET /schedule.
  4. Delo. Strežnik zažene kodo, ki obravnava /schedule — morda poišče današnje rezervacije v bazi podatkov.
  5. Odgovor. Pošlje nazaj statusno kodo (200 OK) in vsebino — HTML stran ali JSON podatke, ki jih stran prikaže.

Vse to običajno traja delček sekunde.

Vrste strežnikov, o katerih boste slišali

PojemPomen
Spletni strežnikProgram, ki odgovarja na HTTP zahteve — pošilja datoteke ali posreduje zahteve kodi vaše aplikacije.
Aplikacijski strežnik / zaledjeVaša lastna koda, ki teče na strežniku: API, ki obravnava rezervacije, prijave in plačila.
Strežnik baze podatkovStrežnik, katerega naloga je shranjevanje in poizvedovanje podatkov — kot baza Postgres, s katero govori vaša aplikacija.
Datotečni / statični strežnikPošilja že pripravljene datoteke (HTML, slike, skripte) brez zagona lastne kode za vsako zahtevo.
Fizični strežnikPravi stroj v omari podatkovnega centra.
Virtualni stroj (VM) / VPSDel fizičnega stroja, ki se obnaša kot lasten računalnik.
Vsebnik (container)Lažji paket aplikacije in vsega, kar potrebuje, zagnan na skupnem stroju. Številne platforme aplikacije namestijo na ta način.
Brez strežnika (serverless)Naložite kodo in ponudnik jo zažene na zahtevo — na strežnikih, ki jih nikoli ne upravljate. Glejte kaj pomeni brez strežnika.

Opazite, da »strežnik« pomeni tako stroj kot program. »Strežnik se je sesul« lahko pomeni oboje.

Delovni primer: aplikacija za rezervacije v salonu

Tukaj je, kaj počne strežnik v majhni aplikaciji za rezervacije v salonu:

  • Obiskovalec odpre spletno mesto. Strežnik (ali CDN pred njim) pošlje datoteke strani.
  • Stran od strežnika zahteva GET /api/slots?date=2026-10-03. Strežnik poizveduje v bazi podatkov za proste termine in jih vrne kot JSON.
  • Obiskovalec rezervira 14:00. Stran pošlje POST /api/bookings. Strežnik preveri, ali je termin še prost — ne zaupa brskalniku na besedo —, shrani rezervacijo in vrne 201 Created.
  • Strežnik s skrivnim ključem, shranjenim na strežniku, pokliče storitev e-pošte in pošlje potrditev.

Če bi strežnik izklopili, bi se stran morda še vedno naložila iz CDN-ja, vendar ne bi mogla prikazati terminov ali shraniti rezervacij.

Kaj strežnik potrebuje za dobro delovanje

  • Pomnilnik (RAM) in procesor (CPU). Premalo pomnilnika in aplikacija pod obremenitvijo sesuje; premalo procesorja in se upočasni.
  • Da teče. Strežnik, ki je izklopljen, ne more odgovarjati. Nekatere platforme nedejavne aplikacije uspavajo in prebudijo ob naslednjem obisku, kar prihrani denar, a lahko prvo zahtevo upočasni.
  • Konfiguracijo in skrivnosti, ki se posredujejo kot okoljske spremenljivke.
  • Dnevnike — zapis strežnika o tem, kaj se je zgodilo; tu najprej pogledate, ko kaj ne dela.
  • Posodobitve in varnostne popravke, ki jih upravljano gostovanje opravi namesto vas.

Pogoste zmote

  • »Oblak pomeni brez strežnikov.« Oblak so strežniki drugih podjetij, najeti po uri ali glede na uporabo.
  • »Strežnik je velik poseben računalnik.« Kateri koli računalnik lahko deluje kot strežnik. Vaš prenosnik ga požene, ko med razvojem odprete localhost.
  • »Če je gumb skrit, ga uporabniki ne morejo uporabiti.« Kdorkoli lahko pošlje zahteve neposredno vašemu strežniku. Preverjanja dovoljenj morajo potekati na strežniku, ne le na strani.
  • »Več strežnikov odpravi počasnost.« Pogosto je pravi vzrok počasna poizvedba v bazi ali zunanji API. Najprej poiščite ozko grlo.
  • »Za aplikacijo moram upravljati strežnik.« Upravljane platforme vodijo strežnike namesto vas; vi namestite kodo, one pa skrbijo za stroje.

Kaj zahtevati od gradnika z umetno inteligenco

  • »Kateri deli te aplikacije tečejo na strežniku, kateri pa v brskalniku?«
  • »Vse ključe API-jev hrani na strežniku in jih beri iz okoljskih spremenljivk.«
  • »Preverjanja dovoljenj izvedi na strežniku za vsako zahtevo, ki bere ali spreminja podatke.«
  • »Kje najdem dnevnike strežnika in kaj pravijo o tej napaki?«
  • »Ali ta aplikacija sploh potrebuje strežnik ali je lahko statično spletno mesto?«
  • »Kaj se zgodi s prvo zahtevo, potem ko je bila aplikacija nedejavna?«

Strežniki na Mythexu

Na Mythexu strežnikov ne nastavljate in ne upravljate. Med gradnjo vaša aplikacija teče v zasebnem oblačnem peskovniku za živi predogled. Ko objavite, Mythex jo namesti — statične sprednje dele kot statična spletna mesta, zaledja (Node, Python, C#, Java in drugi) kot vsebnike, zgrajene iz Dockerfile — brez kakršnega koli gostovanja, ki bi ga morali sami nastaviti. Mythex ob namestitvi izbere velikost stroja: privzeto 1 procesor in 512 MB pomnilnika, več je na voljo na zahtevo (do 1 GB v paketu Free ter do 2 procesorjev, 4 GB in 3 strojev v paketu Pro). Objavljene aplikacije ob nedejavnosti zaspijo in se prebudijo ob naslednjem obisku; uspavana aplikacija ne porabi nič za računanje. Podrobnosti so v dokumentaciji o API zaledjih in omejitvah gostovanja, naš vodnik o spletnem gostovanju pa pokriva širšo sliko.

Vprašanja

Kaj je strežnik na kratko?

Strežnik je računalnik ali program, ki teče na njem, ki čaka na zahteve drugih naprav in nanje odgovarja. Ko odprete spletno mesto, brskalnik od strežnika zahteva stran, strežnik pa jo pošlje nazaj.

Je strežnik fizični stroj ali programska oprema?

Uporabljata se oba pomena. »Strežnik« lahko pomeni fizični ali virtualni računalnik ali program na njem, ki obravnava zahteve, na primer spletni strežnik. Večina današnjih aplikacij teče na virtualnih strojih ali vsebnikih v podatkovnem centru ponudnika oblaka, ne na strojni opremi, ki si jo lastite.

Ali vsako spletno mesto potrebuje strežnik?

Da, nekaj mora obiskovalcu vedno poslati datoteke. Statično spletno mesto potrebuje le preprost datotečni strežnik ali CDN. Aplikacija, ki shranjuje podatke, obravnava prijave ali hrani skrivne ključe API-jev, potrebuje tudi zaledni strežnik, ki poganja vašo kodo.

Kaj pomeni localhost?

Localhost pomeni »ta isti računalnik«. Razvijalec, ki požene aplikacijo na svojem stroju, jo odpre na naslovu, kot je http://localhost:3000. Do nje lahko dostopa le ta računalnik; nihče drug je ne vidi, dokler ne bo nameščena na javnem strežniku.

Mythex · Pricing · Zgradite karkoli z AI · Predloge za spletna mesta in aplikacije · Mythex v primerjavi · Slovar pojmov gradnje aplikacij z AI · Brezplačna orodja za gradnjo aplikacij z AI · English

English አማርኛ العربية Български বাংলা Bosanski Català Čeština Dansk Deutsch Ελληνικά Español Español (España) Eesti فارسی Suomi Français Français (Canada) ગુજરાતી हिन्दी Hrvatski Magyar Հայերեն Bahasa Indonesia Íslenska Italiano 日本語 ქართული Қазақ тілі ಕನ್ನಡ 한국어 Lietuvių Latviešu Македонски മലയാളം Монгол मराठी Bahasa Melayu မြန်မာ Norsk bokmål Nederlands ਪੰਜਾਬੀ Polski Português (Brasil) Português (Portugal) Română Русский Slovenčina Soomaali Shqip Srpski Svenska Kiswahili தமிழ் తెలుగు ไทย Tagalog Türkçe Українська اردو Tiếng Việt 简体中文 繁體中文(香港) 繁體中文(台灣)