服务器下的程序会用curl进行一次网络请求,请教怎么解决整个网站卡的有关问题

php中文网
发布: 2016-06-13 13:13:03
原创
1068人浏览过

服务器上的程序会用curl进行一次网络请求,请问如何解决整个网站卡的问题?
上一贴没说清楚,重新说一下。

a.php b.php c.php 三个页面。

打开a.php页页后。
a.php会用ajax请求b.php。
b.php里面用curl进行数据采集。比如采集zhidao.baidu.com/xx.html
如果这个时候baidu.com反映慢。curl不能很快完成这次请求。那么。整个网站就会卡住。这个时候打开a.php c.php都会卡在那里直到那个ajax请求完成。
请问有何良方?

现在我在写一个类似只看楼主功能的东西。模式差不多,
www.onlylz.com 貌似他的并没有此起整个网站卡

------解决方案--------------------
CURLOPT_TIMEOUT,设置超时时间?
非阻塞?
http://blog.csdn.net/linvo/article/details/5956629
------解决方案--------------------
那个ajax请求完成。可以设置成异步方式。
采集数据如果没有特殊要求,可以定时采集,入库。然后在获取
------解决方案--------------------
这个时候打开a.php c.php都会卡在那里直到那个ajax请求完成。
你是用的什么浏览器? 什么服务器系统?

对浏览器来说,每个请求都是不相关的,没有同一时间只能发起一个请求的说法。
对服务器来说,为每个请求分配的资源都是独立的,没有同一时间只能处理一个请求的说法。
因而如果造成阻塞,只能是程序自作孽,比如PHP中session的文件锁。
如果你的网站的c.php a.php页面均启用了session,那么就会导致服务器其它进程一直等待文件锁释放,因而浏览器端长时间得不到响应。
如果如我所说,那么解决方法我想你也知道

相关标签:
最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号