Я пытался выполнить эту команду соляного стека cmd = "/usr/local/bin/salt -L 'target' cp.get_dir salt://allapps/V001 /u02/tomcat-8.0.24/8080/webapps/"
output = os.popen(cmd).readlines()
с помощью python. Я запустил 8 потоков параллельно, чтобы выполнить эту команду, но каждый поток требует около 5 минут для завершения. Но я запускаю эту команду в автономном терминале или консоли Python, мне требуется около 2-3 секунд. Сначала я подумал, что это из-за того, что readlines() потребляет много памяти, но все еще стоит на 5 минут больше, чтобы закончить, когда я удалил readlines() только для запуска команды оболочки с os.popen(). Я понятия не имею, почему выполнение этой команды занимает так много времени, какие-либо решения для этого? Спасибо, ребята
Я обнаружил, что для выполнения output = os.popen("/usr/local/bin/salt -L 'target' cp.get_dir salt://allapps/V001 /u02/tomcat-8.0.24/8080/webapps/")
, кроме output = os.popen(cmd)
, требуется около 5 секунд. Переменная cmd
точно такая же, как и "/usr/local/bin/salt -L 'target' cp.get_dir salt://allapps/V001 /u02/tomcat-8.0.24/8080/webapps/"
. Почему такая большая разница?