От многопоточных вычислений переходим к распределённым. То есть вычисления, происходящие на нескольких компьютерах.
Конечно, в зависимости от задачи, вы можете взять готовые решения вроде CGRU или Deadline для рендеринга, charm4py или Dask для ML, или замутить что-то на AWS С2. Но хотелось бы чего-то попроще, попитоничней что ли)
А ведь в Python есть средства "из коробки" для синхронизации нескольких процессов на разных хостах.
Вот простой пример кода, который синхронизирует работу двух процессов на разных компьютерах.
В этом случае используется процесс-посредник, который является синхронизирующим сервером.
В примере создаётся некий Manager, который шарит общую для клиентов очередь. Все подключившиеся могут что-то в неё писать или забирать.
В моём коде один процесс что-то "считает" и складывает в очередь, другой забирает и продолжает какие-то свои "расчёты".
Если у вас есть несколько машин, то можете попробовать это запустить по сети (нужно заменить 'localhost' на IP-адрес сервера). Но и на локальной машине сработает.
Gist 🌎
#libs#source#tricks
@GitHubBot
Qué puede hacer este bot?
Este es un bot de GitHub. Puede notificarle sobre eventos en sus repositorios públicos de GitHub. También puede responder a tus mensajes para publicar comentarios en GitHub directamente desde Telegram.
Idioma: Inglés
(visto en @BotsGram_cu)
#telegram, #notify, #events, #github, #delete, #public, #command, #messages, #repository
@TodoTask_bot
Qué puede hacer este bot?
Bot simple que ayuda a realizar un seguimiento y te recuerda las tareas pendientes
Idioma: Inglés
(visto en @BotsGram_cu)
#todo, #organize, #productivity, #do, #remind, #alarm, #notification, #notify
@RRemindersBot
Qué puede hacer este bot?
Con este bot puedes establecer recordatorios para eventos importantes
Idioma: Inglés
(visto en @BotsGram_cu)
#alert, #alert, #remind, #notification, #reminder, #memory, #memorize, #remember, #notify, #timer, #timing, #timed, #forget, #keep, #productivity, #productivity