Asiakas-palvelin-arkkitehtuuri

Wikipediasta
(Ohjattu sivulta Asiakas-palvelin-malli)
Siirry navigaatioon Siirry hakuun
Tietokoneverkon kaavio, jossa asiakasohjelma kommunikoivat palvelinohjelman kanssa Internetin yli.

Asiakas-palvelin-arkkitehtuuri on ohjelmistoarkkitehtuuri, jossa tietokoneverkossa olevat asiakasohjelmat ovat yhteydessä keskitettyyn palvelinohjelmaan. Esimerkiksi verkkoselain on asiakasohjelma ja WWW-palvelin on palvelinohjelma.

Asiakaat ovat työasemia tai henkilökohtaisia tietokoneita ja palvelimet ovat jossakin muualla verkossa, usein tehokkaammilla tietokoneilla.[1] Ideaalitapauksessa palvelin toteuttaa on standardoidun läpinäkyvän rajapinnan (tietoliikenneprotokolla), jolloin asiakkaan ei tarvitse tuntea palvelimen toteutusta.[1] Koska asiakas- ja palvelintietokoneet ovat toisistaan riippumattomia laitteita malli on täysin eri suurtietokoneissa käytetystä mallista, jossa tyhmä pääte vain kommunikoi keskuskoneen kanssa.[1]

Termillä voidaan myös tarkoittaa mitä vain kahteen tai useampaan prosessiin jaettua tietojenkäsittelyä.[2]

Termien varhainen lähde on hajautettua tiedostojärjestelmää koskeva artikkeli Separating Data From Function in a Distributed File System vuodelta 1978.[3]

Ominaispiirteitä

[muokkaa | muokkaa wikitekstiä]

Eräitä mallin ominaispiirteitä:[4]

  • epäsymmetrisyys: monta-yhteen suhde asiakkaiden ja palvelimien välillä; asiakkaat aloittavat pyytämällä palvelua; palvelimet odottavat passiivisesti pyyntöjä asiakkailta.
  • kapselointi: palvelin on erikoistunut ja päättää miten tehtävä suoritetaan kun se saa pyynnön; palvelimet voidaan päivittää ilman vaikutusta asiakkaisiin niin kauan kuin viestirajapinta säilyy muuttumattomana.
  • eheys: ohjelmakoodi ja data ovat keskitetysti hallittuja; asiakkaat ovat riippumattomia ja henkilökohtaisia.
  • sijainnista riippumattomuus: asiakas ja palvelin ovat prosesseja, jotka voivat sijaita samalla tietokoneella tai erotettuna tietokoneverkon välityksellä.
  • viestipohjaisuus
  • alustariippumattomuus: asiakkaat ja palvelimet voivat olla riippumattomia käytetystä käyttöjärjestelmästä tai laitteistosta ja sallii eri yhdistelmiä.
  1. a b c client-server architecture britannica.com. Viitattu 26.10.2021. (englanniksi)
  2. Distributed Application Architecture – Internet Archive
  3. Separating Data From Function in a Distributed File System priorart.ip.com. Viitattu 26.10.2021. (englanniksi)
  4. Anatomy of the Client/Server Model docs.oracle.com. Viitattu 26.10.2021. (englanniksi)

Aiheesta muualla

[muokkaa | muokkaa wikitekstiä]
Tämä tietotekniikkaan liittyvä artikkeli on tynkä. Voit auttaa Wikipediaa laajentamalla artikkelia.