为了账号安全,请及时绑定邮箱和手机立即绑定

[python] 大量小文件读写并行处理方案

[python] 大量小文件读写并行处理方案

拉丁的传说 2019-04-08 11:17:02
我有大量的小文件需要处理,采用那种并行方案比较好?多进程多线程协程我的疑惑在于:Python的GIL的存在是否导致了多线程处理不如多进程处理?在耗时上Python多进程的最佳进程数比如为4,那么相同耗时的线程数是不是要比4高?如果我在C中使用多线程,然后调用Python库,这种情形下有GIL的问题吗?
查看完整描述

2 回答

?
开心每一天1111

TA贡献1836条经验 获得超13个赞

你的小文件是在同一磁盘上吗?你对每个小文件的「处理」是很快就能完成的操作吗?——如果不是,单线程单进程吧,瓶颈不在那里。
如果不确定,先单线程单进程,看CPU能跑满不。
                            
查看完整回答
反对 回复 2019-04-08
?
慕桂英3389331

TA贡献2036条经验 获得超8个赞

写过多线程python处理小文件的程序
大概4w多个html文件
印象里似乎多线程也没有怎么变快,甚至还慢了一点……
推测下来是小文件的IO瓶颈太大
而不是处理速度
你把这些小文件用BLOB写到一个NOSQL数据库里,然后来处理可能多线程上会有优势
                            
查看完整回答
反对 回复 2019-04-08
  • 2 回答
  • 0 关注
  • 830 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信