php curl抓取网页数据(无php调度你不应该着眼于用什么工具的实现)
优采云 发布时间: 2021-11-28 00:03php curl抓取网页数据(无php调度你不应该着眼于用什么工具的实现)
phpcurl抓取网页数据,保存到本地和lnmp通过gdx调度,就可以把本地的数据从lnmp中读取出来php层和cxff是分离的,php处理html/javascript/css等。
无php调度
你不应该着眼于用什么工具的实现方式来控制php的进程/线程数量,而是应该着眼于调度是否可以做到线程隔离。比如uwsgi虽然是基于conf/nt进程,但其实phpworker占有的资源非常多(看它自己的说明),但worker占用的多(导致网络io也需要多),故而依然难以做到线程隔离。国内有些conf有这样的方案,但国内大部分用的是schema完全一样的版本,即所有资源都统一处理,你就更难去隔离了,只能去调度国内的服务器来并发。
国内conf/nt调度也有相当部分是基于flask的,在通过tornado等实现的项目中出现大量问题。
使用schema的版本,对于nginx来说,调度是分开的,对于uwsgi来说,调度是依赖于相关worker进程的,这是schema优化方案的原因,然而,有些worker进程明显不是为这个版本的内容(例如lnmp的daemon或其他)特意设计的,这就导致同一个http调度对于不同内容,数量是不一样的,调度结果也不一样,即使很多http的数据在同一个服务器上运行也会出现这样的情况。
这个问题我也有遇到,其实这个问题可以设计一个单独的conf,然后走conf来处理,然而实践是要在实践中去完善这个schema的工作量非常大,可以由高手来完成,但我遇到的这个问题只有两种选择,要么你变成高手,要么你放弃。