У меня есть папка с множеством сценариев .sh. Как я могу использовать уже настроенный распределенный кластер dask для их параллельной работы?
В настоящее время я делаю следующее:
import dask, distributed, os
# list with shell commands that I want to run
commands = ['./script1.sh', './script2.sh', './script3.sh']
# delayed function used to execute a command on a worker
run_func = dask.delayed(os.system)
# connect to cluster
c = distributed.Client('my_server:8786')
# submit job
futures = c.compute( [run_func(c) for c in commands])
# keep connection alive, do not exit python
import time
while True:
time.sleep(1)
Это работает, однако для этого сценария было бы идеально, если бы клиент мог отключиться, не заставляя планировщик отменить задание. Я ищу способ вычисления моих задач, который не требует активного клиентского подключения. Как это можно было сделать?