Hva er distribuert samtidighetskontroll?
Distribuert samtidighetskontroll er en strategi som sprer ansvaret for samtidighetskontroll over et helt nettverk. Samtidig refererer til å ha alle datamaskinene som jobber med samme versjon av de samme filene. Når datamaskiner er koblet sammen, kommer bekymringsmessige forhold - problemer med å holde alle filene i nettverket identisk for alle brukere - opp i høysetet, ettersom flere brukere kan ha samtidig tilgang til autoriserte filer og mapper på systemet. Uten å håndheve samtidighet, kan disse filene lett bli inkonsekvente fra en datamaskin til den neste når brukere endrer og manipulerer data i sanntid, noe som resulterer i at alle raskt mister muligheten til å stole på nettverksfiler når endringer skjer. Samtidighetskontroll holder filer konsistente i hele nettverket, og unngår denne bekymringen.
Den viktigste fordelen med distribuert samtidighetskontroll er at den sprer arbeidsmengden for samtidighetsproblemer på flere datamaskiner, og reduserer dermed overhead på hver. Uten distribuert samtidighetskontroll, kan det å holde samtidighet i et nettverk lett bli en heltidsjobb for en enkelt datamaskin, noe som gjør det ubrukelig for noe annet. Med distribuert samtidighetskontroll kan hver datamaskin i nettverket bidra til å dele arbeidsmengden, og sikre at sluttbrukere fortsatt kan bruke terminalene til andre nettverksoppgaver.
Sterk streng tofaselåsing er en av de vanligste typene distribuert samtidighetskontroll. I sterk streng tofaselåsing, så snart en individuell nettverksfil er tilgjengelig, blir den låst for både lese- og skriveoperasjoner til tilgangen avsluttes. Dette betyr at bare en bruker i nettverket kan endre en fil om gangen, noe som gjør det umulig for filen å falle ut av samtidighet i nettverket. Når sluttbrukeren lagrer endringer i filen eller avslutter filen helt, fjernes låsene, slik at en annen bruker på systemet deretter kan håndtere filen igjen.
En av de største ulempene med sterk streng tofaselåsing er den ekstra overhead den plasserer på nettverksressurser. Hver fil under hver bruker må øremerkes av nettverket som "låst", og den informasjonen må lagres i minnet til låsen slutter. Til sammen, med hundrevis av sluttbrukere som kjører hundrevis av filer samtidig, kan dette lett cannibalisere en betydelig del av minnet i nettverket. Denne overdreven kannibaliseringen av minnet kan bremse nettverk med ineffektiv eller utdatert maskinvaredesign.