如果多个paramiko脚本同时执行,则paramiko使用100个CPU并且速度会降低

问题描述 投票:1回答:1

以下代码工作正常,并在7分钟内下载6GB文件。还有10个这样的脚本在7分钟内下载10 * 6-60 gb。我的PC支持16核心,当我尝试同时运行30个paramiko python脚本时,下载需要数小时和数小时,因为核心完全参与。每个paramiko python脚本使用100%CPU。我使用paramiko窗口大小也是为了良好的spped。我知道我必须在我的python脚本中使用time.sleep ..但如何使用这个我已经多次使用睡眠但失败请建议如何使paramiko使用更少的CPU。代码如下:

#!/usr/bin/env python
import sys, paramiko
hostname = 'x.x.85.y8'
password = 'XXXX1234'
source = r'/root/1/kerneljobs/28.tar'
dest = r"/root/1/kerneljobs/destuny.tar"
username = "root"
port = 22
try:
    t = paramiko.Transport((hostname, port))
    t.connect(username=username, password=password)
    sftp = paramiko.SFTPClient.from_transport(t)
    sftp.get(source, dest)
finally:
    t.close()
python paramiko
1个回答
0
投票

开放是没有意义的

  • 超过3-4个连接,如果网络延迟是瓶颈或
  • 如果CPU是瓶颈,那么比CPU核心更多的连接。
© www.soinside.com 2019 - 2024. All rights reserved.