Hva er en distribuert applikasjon?
En distribuert applikasjon er et program ment å kjøres på flere datamaskiner samtidig og kan lagres på en server eller i sky databehandling. Dette brukes ofte i et nettverk som har et klient-server-forhold der en klientdatamaskin får tilgang til et program fra serveren og serveren utfører all behandling. Hver datamaskin som får tilgang til applikasjonen normalt er laget for et bestemt formål. Selv om det er mange forskjellige distribuerte applikasjoner, er de vanlige generelle programmer, samarbeidsprogramvare, sanntidssystemer og beregningssystemer. Det er vanligvis en fordel å bruke en distribuert applikasjon, men dette kan utgjøre et problem hvis serveren er svak eller treg.
Distribuerte applikasjonssystemer kan brukes på mange forskjellige nettverkstyper, men de sees ofte i klient-servernettverk. I denne typen nettverk får klientdatamaskinen - eller datamaskinen folk bruker - tilgang til programmer og informasjon fra serveren. Ikke bare brukes applikasjonen fra serveren, men serveren er ansvarlig for å utføre all behandlingen for at programmet skal fungere. Cloud computing kan også brukes til dette, i hvilket tilfelle programmet er lagret på en skyserver og klientdatamaskiner får tilgang til programmet.
Mens hver datamaskin eller person kan bruke den distribuerte applikasjonen til generelle formål, er datamaskinen eller personen vanligvis spesialisert eller instruert til å utføre en spesifikk oppgave. For eksempel kan en datamaskin brukes eller optimaliseres for å lage et bilde mens en annen brukes til tekst. Brukeren kan også bli bedt om å utføre en viss oppgave, i stedet for bare å utføre generiske oppgaver.
Det er mange forskjellige distribuerte applikasjonstyper, men det er fire primære kategorier. Generelle programmer er vanlige programmer som finnes på en datamaskin, bare de er laget for å fungere på flere datamaskiner samtidig. Samarbeidsprogramvare er laget slik at flere mennesker kan jobbe med et enkelt prosjekt samtidig; hver bruker jobber vanligvis på en annen del av prosjektet. Sanntidssystemer er chat-og-billett-programmer der brukere svarer på spørsmål fra kunden online. Computational programmer er laget for å behandle kode, og bruker flere datamaskiner samtidig optimaliserer og fremskynder behandlingen.
Å bruke et distribuert program er generelt gunstig, fordi det gjør det lettere for mange brukere å få tilgang til og bruke et program på en gang, selv om det kan være et problem hvis serveren ikke er sterk. Serveren er ofte ansvarlig for å utføre behandlingen, så dette legger mye belastning på serveren. Hvis serveren er svak eller treg, kan dette føre til etterslep eller mer alvorlige problemer på datamaskiner som får tilgang til programmet.