Distributed lock jest potrzebny, gdy wiele instancji musi zagwarantować, że tylko jedna wykona sekcję krytyczną (np. jeden job schedulera). Ryzyka: wycieki locków, split-brain, problemy zegara/sieci i dodatkowe opóźnienie; jeśli się da, preferuj idempotencję i constrainty w DB.
Rozwinięcie krótkiej odpowiedzi — co zwykle ma znaczenie w praktyce:
Krótki przykład (szablon do wyjaśniania):
// Example: discuss trade-offs for "distributed-locki-—-kiedy-są-potrzebne-i-jakie-n"
function explain() {
// Start from the core idea:
// Distributed lock jest potrzebny, gdy wiele instancji musi zagwarantować, że tylko jedna wy
}