От многопоточных вычислений переходим к распределённым. То есть вычисления, происходящие на нескольких компьютерах.
Конечно, в зависимости от задачи, вы можете взять готовые решения вроде CGRU или Deadline для рендеринга, charm4py или Dask для ML, или замутить что-то на AWS С2. Но хотелось бы чего-то попроще, попитоничней что ли)
А ведь в Python есть средства "из коробки" для синхронизации нескольких процессов на разных хостах.
Вот простой пример кода, который синхронизирует работу двух процессов на разных компьютерах.
В этом случае используется процесс-посредник, который является синхронизирующим сервером.
В примере создаётся некий Manager, который шарит общую для клиентов очередь. Все подключившиеся могут что-то в неё писать или забирать.
В моём коде один процесс что-то "считает" и складывает в очередь, другой забирает и продолжает какие-то свои "расчёты".
Если у вас есть несколько машин, то можете попробовать это запустить по сети (нужно заменить 'localhost' на IP-адрес сервера). Но и на локальной машине сработает.
Gist 🌎
#libs#source#tricks
🛰️ Flags of the #Kaliningrad Region and the City of Zelenogradsk are back from #ISS🌍 to be later exhibited in #Kaliningrad Regional Museum of History and Arts.
📸 by the Museum
🚀🌍Le commandant de l'ISS et envoyé spécial de TASS à bord, Sergueï Koud-Svertchkov, a montré des images du vaisseau spatial Crew Dragon approchant de la station.
#iss#espace
LIVE: Farewells, hatch closing for Soyuz MS-18 crew on ISS
Farewells and hatch closing for the Soyuz MS-18 crew on the International Space Station.
#Reuters#Live#News#Space#ISS
➖@reutersworldchannel➖
🇷🇺🛰️ Le vaisseau cargo Progress MS‑32 s’est désamarré du module Zvezda du segment russe de la Station spatiale internationale (ISS) avant l’arrivée d’un nouveau cargo, montre la retransmission de Roscosmos.
#russie#vaisseau#iss