玩蛇网提供最新Python编程技术信息以及Python资源下载!

python处理小文件读写并行的一些疑惑

我有大量的小文件需要处理,采用那种并行方案比较好?

  1. 多进程

  2. 多线程

  3. 协程

我的疑惑在于:

  1. Python的GIL的存在是否导致了多线程处理不如多进程处理?在耗时上

  2. Python多进程的最佳进程数比如为4, 那么相同耗时的线程数是不是要比4高?

  3. 如果我在C中使用多线程,然后调用Python库,这种情形下有GIL的问题吗?

你的小文件是在同一磁盘上吗?你对每个小文件的「处理」是很快就能完成的操作吗?——如果不是,单线程单进程吧,瓶颈不在那里。

如果不确定,先单线程单进程,看 CPU 能跑满不。

写过多线程python处理小文件的程序 大概4w多个html文件

印象里似乎多线程也没有怎么变快,甚至还慢了一点…… 推测下来是小文件的IO瓶颈太大 而不是处理速度

你把这些小文件用BLOB写到一个NOSQL数据库里,然后来处理可能多线程上会有优势

大量小文件处理速度还是很快的,关键是磁盘的读写。

所以 1 2 3 效果不明显。

玩蛇网文章,转载请注明出处和文章网址:https://www.iplaypy.com/wenda/wd20029.html

相关文章 Recommend

玩蛇网Python互助QQ群,欢迎加入-->: 106381465 玩蛇网Python新手群
修订日期:2017年05月24日 - 20时28分11秒 发布自玩蛇网

您现在的位置: 玩蛇网首页 > Python问题解答 > 正文内容
我要分享到:

必知PYTHON教程 Must Know PYTHON Tutorials

必知PYTHON模块 Must Know PYTHON Modules