首页 » 网站推广 » phpcurl抓取掉败技巧_填坑日记在轮回逻辑中运用curl抓取数据导致内存不足脚本中断

phpcurl抓取掉败技巧_填坑日记在轮回逻辑中运用curl抓取数据导致内存不足脚本中断

访客 2024-11-08 0

扫一扫用手机浏览

文章目录 [+]

这是老兵最近碰着的问题~

业务场景描述:

首先curl因此工具的形式封装了一个类,详细的业务逻辑便是实例化curl类,然后循环要求一个接口获取数据,业务逻辑是通过命令行实行的

phpcurl抓取掉败技巧_填坑日记在轮回逻辑中运用curl抓取数据导致内存不足脚本中断

当时暴露的问题是每循环16W条记录,就会中断,提示内存不敷~

phpcurl抓取掉败技巧_填坑日记在轮回逻辑中运用curl抓取数据导致内存不足脚本中断
(图片来自网络侵删)
处理过程:

问题暴露后老兵最先想到的是在实行脚本过程中把利用过的变量全部开释,但是却忽略了curl工具,由于curl类内部封装了开释ch资源的逻辑,以是没有在意,但是再次实行的时候还是报错,我就开始犹豫了,首先开释变量的思路肯定是对的,但是又想不到还有什么变量在占用内存。

于是我就去翻阅php的手册,垃圾回收机制,在看curl类的封装才明白缘故原由。

curl类中,把curl初始化的资源句柄保存成公共属性,由于忘却开释curl工具,只管ch资源句柄被开释,但是工具的内存占用还是存在~

以是我修正了一下逻辑,在每次循环结束将curl工具也开释~

再次实行OK,无论脚本运行多久都没问题~

本日的填坑就演示到这里,欢迎战友们留言互换~
标签:

相关文章

招商蛇口中国房地产龙头企业,未来可期

招商蛇口(股票代码:001979),作为中国房地产企业的领军企业,自成立以来始终秉持“以人为本,追求卓越”的经营理念,致力于打造高...

网站推广 2025-02-18 阅读1 评论0