在Python中使用100%网络

时间:2018-02-28 08:37:12

标签: python multithreading python-2.7 networking multiprocessing

我目前正试图以最快的方式同时从多台服务器中获取文件。我编写了Python脚本,将Paramiko用于SCP所有文件到我的电脑。我认为线程可以解决问题,但是当我运行脚本时,我只能看到我网络的60%被利用。即使我从50改变线程数 - > 100似乎没有任何区别。我发现线程实际上只是在同一个核心上运行,而GIL阻止线程同时工作;线程只是快速地在彼此之间切换。

我继续尝试使用多处理,看看它似乎只应该为你拥有的核心数量产生Process; 4在我的情况下。当我运行它时,我的CPU最大使用率为99%,我的网络为0%,尽管文件似乎正在慢慢传输......

我的问题是如何利用100%来最大限度地提高下载速度并缩短下载时间?生成线程的Spawn进程?

0 个答案:

没有答案