Python循环二进制读取文件性能低下问题咨询
大文件哈希计算的性能踩坑复盘
我最近在做一个需求:遍历指定文件夹及其所有子目录,计算每个文件的哈希值。本来以为这是个没啥技术难度的操作,结果在测试和排查过程中发现了一个挺头疼的性能问题:
- 测试阶段一共处理1036个文件,代码执行的前950余个文件速度完全符合预期,但当文件计数到900后期时,速度突然骤降,效率大打折扣
- 后续针对代码逐段排查,最终锁定了问题的根源:文件的二进制读取操作,而且测试下来发现,读取块的大小(我分别试了
1024、4096、65536这几个常见值)对性能有着非常显著的影响
补充说明:这个需求的实际生产场景要处理约75000个文件,所以这个性能问题必须解决,不然到时候跑起来会严重超时
内容的提问来源于stack exchange,提问作者Michael Geiser
相关产品推荐
相关产品推荐

