Является ли потокобезопасным клиент с Dask-дистрибутивом?

#python #multithreading #dask #aiohttp

#python #многопоточность #dask #aiohttp

Вопрос:

Могу ли я использовать экземпляр распределенного клиента как одноэлементный в многопоточной среде?

 # process start
from dask.distributed import Client
client = Client()
  
# thread-1
f = client.submit(some_work)
f.result()

# thread-2
f = client.submit(anothe_work)
f.result()
  

Как насчет использования асинхронного клиента Dask с aiohttp? Должен ли я создавать экземпляр клиента для каждого запроса? Или для потока IOLoop? Или для каждого процесса будет достаточно?

Ответ №1:

Мы рекомендуем использовать Dask асинхронно. Документация здесь: https://distributed.dask.org/en/latest/asynchronous.html

Но также да, большинство операций с клиентами Dask являются потокобезопасными. Однако использование цикла событий более плавное.