Ce este controlul concurenței distribuite?

Controlul concurenței distribuite este o strategie care răspândește responsabilitatea controlului concurenței pe întreaga rețea. Concurența se referă la faptul că toate computerele lucrează cu aceeași versiune a acelorași fișiere. Odată ce computerele sunt conectate în rețea, problemele de concurență – probleme legate de păstrarea identice a tuturor fișierelor din rețea pentru toți utilizatorii – urcă în prim-plan, deoarece mai mulți utilizatori pot avea acces simultan la orice fișiere și foldere autorizate de pe sistem. Fără a impune concurența, aceste fișiere ar putea deveni cu ușurință inconsecvente de la un computer la altul, pe măsură ce utilizatorii modifică și manipulează datele în timp real, ceea ce duce la pierderea rapidă a capacității de a se baza pe fișierele de rețea pe măsură ce au loc modificări. Controlul concurenței menține fișierele consistente în întreaga rețea, evitând această problemă.

Avantajul principal al controlului de concurență distribuită este că distribuie volumul de lucru pentru problemele de concurență pe mai multe computere, reducând cheltuielile generale pentru fiecare. Fără control al concurenței distribuite, păstrarea concurenței într-o rețea ar putea deveni cu ușurință o muncă cu normă întreagă pentru un singur computer, făcându-l inutil pentru orice altceva. Cu controlul concurenței distribuite, fiecare computer din rețea poate ajuta la partajarea sarcinii de lucru, asigurându-se că utilizatorii finali pot utiliza în continuare terminalele pentru alte sarcini de rețea.

Blocarea strictă puternică în două faze este unul dintre cele mai comune tipuri de control al concurenței distribuite. În blocarea strictă în două faze, de îndată ce este accesat un fișier de rețea individual, acesta este blocat atât pentru operațiuni de citire, cât și pentru scriere, până la sfârșitul accesului. Aceasta înseamnă că doar un utilizator din rețea poate schimba un fișier la un moment dat, ceea ce face imposibil ca fișierul să iasă din concurență în rețea. Odată ce utilizatorul final salvează modificările aduse fișierului sau iese complet din fișier, blocările sunt eliminate, permițând unui alt utilizator din sistem să gestioneze fișierul din nou.

Unul dintre cele mai mari dezavantaje ale blocării stricte în două faze este supraîncărcarea suplimentară pe care o plasează resurselor de rețea. Fiecare fișier sub fiecare utilizator trebuie să fie alocat de rețea ca „blocat”, iar acele informații trebuie păstrate în memorie până la sfârșitul blocării. În total, cu sute de utilizatori finali care rulează sute de fișiere în același timp, acest lucru poate canibaliza cu ușurință o parte semnificativă a memoriei din rețea. Această canibalizare excesivă a memoriei poate încetini rețelele cu design hardware ineficient sau învechit.