Che cos’è il controllo della concorrenza distribuita?

Il controllo della concorrenza distribuita è una strategia che distribuisce la responsabilità del controllo della concorrenza su un’intera rete. La concorrenza si riferisce al fatto che tutti i computer funzionano con la stessa versione degli stessi file. Una volta che i computer sono collegati in rete, i problemi di concorrenza (problemi con il mantenimento di tutti i file sulla rete identici per tutti gli utenti) salgono in primo piano, poiché più utenti possono avere accesso simultaneo a qualsiasi file e cartella autorizzati sul sistema. Senza imporre la concorrenza, questi file potrebbero facilmente diventare incoerenti da un computer all’altro poiché gli utenti modificano e manipolano i dati in tempo reale, con la conseguenza che tutti perdono rapidamente la capacità di fare affidamento sui file di rete quando vengono apportate modifiche. Il controllo della concorrenza mantiene i file coerenti in tutta la rete, evitando questo problema.

Il vantaggio principale del controllo della concorrenza distribuito è che distribuisce il carico di lavoro per i problemi di concorrenza su più computer, riducendo il sovraccarico su ciascuno. Senza il controllo della concorrenza distribuita, mantenere la concorrenza su una rete potrebbe facilmente diventare un lavoro a tempo pieno per un singolo computer, rendendolo inutile per qualsiasi altra cosa. Con il controllo della concorrenza distribuito, ogni computer sulla rete può aiutare a condividere il carico di lavoro, garantendo che gli utenti finali possano ancora utilizzare i terminali per altre attività di rete.

Il forte blocco rigoroso a due fasi è uno dei tipi più comuni di controllo della concorrenza distribuita. In un forte rigoroso blocco a due fasi, non appena si accede a un singolo file di rete, viene bloccato sia per le operazioni di lettura che di scrittura fino al termine dell’accesso. Ciò significa che un solo utente della rete può modificare un file alla volta, rendendo impossibile la simultaneità del file sulla rete. Una volta che l’utente finale salva le modifiche al file o esce del tutto dal file, i blocchi vengono rimossi, consentendo a un altro utente del sistema di gestire nuovamente il file.

Uno dei maggiori svantaggi di un forte blocco rigoroso a due fasi è il sovraccarico aggiuntivo che pone sulle risorse di rete. Ogni file sotto ciascun utente deve essere contrassegnato dalla rete come “bloccato” e tali informazioni devono essere conservate in memoria fino alla fine del blocco. Nel complesso, con centinaia di utenti finali che eseguono centinaia di file contemporaneamente, questo può facilmente cannibalizzare una parte significativa della memoria sulla rete. Questa eccessiva cannibalizzazione della memoria può rallentare le reti con design hardware inefficienti o obsoleti.