Unser Server-Cluster besteht aus 20 Maschinen mit jeweils 10 Pids zu 5 Threads. Wir möchten irgendwie verhindern, dass zwei Threads mit beliebiger Pid auf einem beliebigen Rechner dasselbe Objekt gleichzeitig ändern können.
Unser Code ist in Python geschrieben und läuft unter Linux, falls das hilft, die Sache einzugrenzen.
Außerdem ist es ein ziemlich seltener Fall, dass zwei solcher Threads dies tun wollen, also würden wir etwas bevorzugen, das den Fall "nur ein Thread braucht dieses Objekt" optimiert, um wirklich schnell zu sein, selbst wenn es bedeutet, dass der Fall "ein Thread hat dieses Objekt gesperrt und ein anderer braucht es" nicht großartig ist.
Was sind einige der besten Praktiken?