Algoritmo dello spaccone
L'algoritmo dello spaccone è utilizzato nei sistemi distribuiti per l'elezione di un coordinatore.
Quando un processo P scopre che l'attuale coordinatore non reagisce più a causa di tempi di risposta lunghi o problemi hardware, esegue la seguente serie di azioni:
1. P manda un messaggio di elezione a tutti gli altri processi con un ID più alto del suo;
2. se P non riceve nessuna risposta da questi processi, si autoelegge come coordinatore;
3. se invece P riceve una risposta da uno di questi processi, P attende un determinato lasso di tempo per permettere a quel processo di proclamarsi come coordinatore. Se non riceve il messaggio in tempo, rimanda il messaggio di elezione (punto 1).
Se P riceve un messaggio di elezione da un processo con ID più basso, manderà immediatamente un messaggio di elezione. Questa è l'origine del nome dell'algoritmo: un processo che ha un ID più alto si contenderà il posto del coordinatore con un processo con ID più basso.