KorP
@KorP
Кратко о себе

Python: как выполнять скрипт в несколько потоков?

Товарищи, подскажите пожалуйста по такому вопросу: использую питон для автоматизации и упрощения администрирования linux-серверов и тут возник вопрос - каким образом можно выполнять команды в несколько потоков?
Допустим надо выполнить команду на нескольких серверах, моих знаний хватает что бы записать все сервера в список и циклом пройтись по нему выполняя поочерёдно команду на каждой машине, что естественно в несколько раз дольше, чем выполнение команды одновременно на всех машинах. Мне просто не хватает знаний - каким образом для этого необходимо содержать список серверов и каким образом в этом случае можно на каждом из них запустить команду. Пока даже не смог толком сформулировать вопрос кратко, что бы задать его гуглу. Подскажите пожалуйста.
  • Вопрос задан
  • 3481 просмотр
Пригласить эксперта
Ответы на вопрос 3
Не уверен, но можно попытаться покопаться в Celery. Также нагуглил следующий вопрос - надеюсь, чем-то поможет в поисках решения
Ответ написан
Комментировать
@vetash
Что если выполнять команду и не дожидаясь ее завершения выполнить следующую?
Нпример на баше для этого используется оператор "&"
Ответ написан
Комментировать
MrFrizzy
@MrFrizzy
Если именно хочется написать с нуля:
1) multiprocessing
2) subprocess
3) асинхронное программирование, лично мне нравится gevent
Если нужно решить задачу - лучше использовать готовые:
1) fabric
2) ansible
3) минутка самопиара: factory - мой клон fabric на gevent'е (в процессе активной разработки, но стараюсь не ломать обратную совместимость...)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы