I blocchi distribuiti sono ben documentati, in più fonti.
L'attributo atomico si riferisce al test-and-set indivisibile che dovrebbe far parte della richiesta di blocco. Altrimenti, due contendenti possono testare contemporaneamente, quindi entrambi si preparano e se ne vanno pensando di avere l'esclusività sulla risorsa.
Poiché è un must, spesso trovi il termine semplicemente come blocco distribuito .
Ora, alcune fonti:
- Antirez (creatore di Redis) ha criticato le implementazioni del client must facendo una buona analisi delle sfide di un blocco distribuito. Ha chiamato la sua soluzione Redlock. Serrature distribuite con Redis
- Poi Martin Kleppmann, autore di Designing Data-Intensive Applications , ha criticato Redlock e ha proposto la sua soluzione in Come eseguire il blocco distribuito
- Poi Antirez ha risposto, in Redlock è sicuro?
L'analisi di questi tre articoli ti darà un'idea precisa di come implementare un blocco distribuito.