Maison > développement back-end > tutoriel php > 带分页接口循环读取的最优方案是哪种

带分页接口循环读取的最优方案是哪种

PHP中文网
Libérer: 2016-08-27 09:06:48
original
2028 Les gens l'ont consulté


目前需要读取第三方接口数据,数据量比较大,第三方才用了分页的方式,目前我的方案是,在循环中调用curl读取接口的方法,再把json数据转换为数组,在拼接数组,进行数据筛选过滤入库操作,但是由于第三方接口不稳定,可能会造成读取失败。请问是否有更好的方案?

回复内容:

目前需要读取第三方接口数据,数据量比较大,第三方才用了分页的方式,目前我的方案是,在循环中调用curl读取接口的方法,再把json数据转换为数组,在拼接数组,进行数据筛选过滤入库操作,但是由于第三方接口不稳定,可能会造成读取失败。请问是否有更好的方案?


如果数据量很大的话,可以采用定时脚本去拉取。
拉取的时候首先按照一个比如自增id的字段排序,这样避免分页数据变动的问题。
然后脚本执行的时候或者循环一次结束的时候,把最大的id记下来,然后下次执行的时候带上大于这个值的条件咯。

然后脚本执行的时候,出现接口调用失败,可以尝试重新拉取几次,失败的话,同样停止脚本执行,然后记下id,然后给预警信息,人工干预。
额,简单的想法


1,建议建立抓取原数据库,id也好md5也好,确保单数据抓取唯一性
2,接口不稳定,通过异常处理 curl失败处理等方式,尽可能确保抓取数据成功
3,做好重复抓取数据的准备,基于1,确保数据不会被重复处理

以上就是带分页接口循环读取的最优方案是哪种的内容,更多相关内容请关注PHP中文网(m.sbmmt.com)!


Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal