От многопоточных вычислений переходим к распределённым. То есть вычисления, происходящие на нескольких компьютерах.
Конечно, в зависимости от задачи, вы можете взять готовые решения вроде CGRU или Deadline для рендеринга, charm4py или Dask для ML, или замутить что-то на AWS С2. Но хотелось бы чего-то попроще, попитоничней что ли)
А ведь в Python есть средства "из коробки" для синхронизации нескольких процессов на разных хостах.
Вот простой пример кода, который синхронизирует работу двух процессов на разных компьютерах.
В этом случае используется процесс-посредник, который является синхронизирующим сервером.
В примере создаётся некий Manager, который шарит общую для клиентов очередь. Все подключившиеся могут что-то в неё писать или забирать.
В моём коде один процесс что-то "считает" и складывает в очередь, другой забирает и продолжает какие-то свои "расчёты".
Если у вас есть несколько машин, то можете попробовать это запустить по сети (нужно заменить 'localhost' на IP-адрес сервера). Но и на локальной машине сработает.
Gist 🌎
#libs#source#tricks
CRPF QRT teams have taken over Security of Nabanna & other Key Govt HQs in West Bengal amid the power transition and have sealed all movements of Government Files, orders from Union Home Ministry
#Policy
West Bengal Chief Secretary orders all Department Secretaries and Head of Offices to ensure that no important paper or file is removed or damaged or taken out from the offices. #Policy
🚨 Indian Govt invokes Force Majeure for contracts hit by West Asia disruptions
👉🏻 West Asia situation treated as war-like event for contracts
👉🏻 Contractors can claim relief for delays linked to disruptions
👉🏻 Govt may grant 2–4 month extension case-by-case
👉🏻 No penalties or liquidated damages for eligible delays
👉🏻 Applies across goods, services & works contracts
👉🏻 Valid only if no prior default before 27 Feb 2026
👉🏻 Contracts delayed beyond 90 days may be terminated without penalty #Policy