Hajautusjärjestelmissä
Hajautusjärjestelmissä viitataan joukkoon tietokoneita ja ohjelmistoja, jotka sijaitsevat verkossa ja joiden tehtävänä on yhdessä suorittaa sovelluksia sekä hallita dataa. Tavoitteita ovat skaalautuvuus, virheiden sieto ja korkea saatavuus, jotta järjestelmä pystyy toimimaan myös silloin kun osa solmuista on pois käytöstä.
Järjestelmän tehtävänä on jakaa laskenta- tai tallennustehtäviä usealle solmulle sekä pitää data saatavilla riittävän nopeasti. Data
Keskeisiä arkkitehtuurityyppejä ovat hajautetut palvelut ja mikropalvelut sekä client-server- ja peer-to-peer-mallit. Konsensusalgoritmit kuten Paxos ja Raft
Esimerkkejä ovat hajautetut tietokannat sekä hajautetut tiedostojärjestelmät sekä pilvipohjaiset mikropalvelu-arkkitehtuurit. Viestintä toteutetaan usein asynkronisesti, viestijonoilla ja
Haasteina ovat virheiden diagnosointi, konsistenssihäiriöt, latenssi ja ylläpito erityisesti suurissa järjestelmissä. Hyvä suunnittelu sekä asianmukaiset työkalut