在PHP中迭代MASSIVE CSV文件的最佳实践

发布时间:2022-04-30 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了在PHP中迭代MASSIVE CSV文件的最佳实践脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
好的,我会尽量保持这个简短,甜蜜和重点.

我们通过将MASSIVE CSV文件上传到基于PHPCMS,对我们的系统进行了大量的GeoIP更新.这件事通常有超过100k的IP地址信息记录.现在,简单地导入这些数据根本不是问题,但是我们必须对当前的区域IP地址映射运行检查.

这意味着我们必须验证数据,比较和拆分重叠的IP地址等.并且必须对每条记录进行这些检查.

不仅如此,我还创建了一个字段映射解决方案,允许其他供应商以不同的格式实现其GeoIP更新.这是通过将规则应用于CSV更新中的IP记录来完成的.

例如,规则可能如下所示:

如果’countryName’==’澳大利亚’然后发送到’澳大利亚IP池’

可能存在多个必须运行的规则,并且每个IP记录必须全部应用它们.例如,根据10条规则检查的100k记录将是100万次迭代;不好玩.

我们发现100条记录的2条规则最多需要10分钟来处理.我完全清楚这里的瓶颈是成功导入必须发生的剪切迭代量;只是没有充分意识到我们可能需要加快一些其他选择.

有人建议将文件拆分为服务器端的块.我不认为这是一个可行的解决方案,因为它为已经很复杂的系统增加了另一层复杂性.必须打开,解析和拆分该文件.然后脚本也必须遍历块.

所以,问题是,考虑到我刚刚写的内容,最好的方法是什么才能加快这个过程?不幸的是,升级服务器的硬件JUST对于这个工具不是一个选择,但它们是非常高端的盒子.

不像我想的那么短,但是. HALPS?

本图文内容来网友网络收集整理提供,作为学习参考使用,版权属于原作者。

脚本宝典总结

以上是脚本宝典为你收集整理的在PHP中迭代MASSIVE CSV文件的最佳实践全部内容,希望文章能够帮你解决在PHP中迭代MASSIVE CSV文件的最佳实践所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。