电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

PHP中巧用curl 并發(fā)減少獲取第三方網(wǎng)頁(yè)內(nèi)容時(shí)間

瀏覽:4日期:2022-09-13 13:35:52
前言:

在我們平時(shí)的程序中難免出現(xiàn)同時(shí)訪(fǎng)問(wèn)幾個(gè)接口的情況,平時(shí)我們用curl進(jìn)行訪(fǎng)問(wèn)的時(shí)候,一般都是單個(gè)、順序訪(fǎng)問(wèn),假如有3個(gè)接口,每個(gè)接口耗時(shí)500毫秒那么我們?nèi)齻€(gè)接口就要花費(fèi)1500毫秒了,這個(gè)問(wèn)題太頭疼了嚴(yán)重影響了頁(yè)面訪(fǎng)問(wèn)速度,有沒(méi)有可能并發(fā)訪(fǎng)問(wèn)來(lái)提高速度呢?今天就簡(jiǎn)單的說(shuō)一下,利用curl并發(fā)來(lái)提高頁(yè)面訪(fǎng)問(wèn)速度, 希望大家多指導(dǎo)。

1、老的curl訪(fǎng)問(wèn)方式以及耗時(shí)統(tǒng)計(jì)

<?phpfunction curl_fetch($url, $timeout=3){ $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_TIMEOUT, $timeout); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); $data = curl_exec($ch); $errno = curl_errno($ch); if ($errno>0) {$data = false; } curl_close($ch); return $data;}function microtime_float(){ list($usec, $sec) = explode(' ', microtime()); return ((float)$usec + (float)$sec);}$url_arr=array( 'taobao'=>'http://www.taobao.com', 'sohu'=>'http://www.sohu.com', 'sina'=>'http://www.sina.com.cn',);$time_start = microtime_float();$data=array();foreach ($url_arr as $key=>$val){ $data[$key]=curl_fetch($val);}$time_end = microtime_float();$time = $time_end - $time_start;echo '耗時(shí):{$time}';?>

耗時(shí):0.614秒

2、curl并發(fā)訪(fǎng)問(wèn)方式以及耗時(shí)統(tǒng)計(jì)

<?phpfunction curl_multi_fetch($urlarr=array()){ $result=$res=$ch=array(); $nch = 0; $mh = curl_multi_init(); foreach ($urlarr as $nk => $url) {$timeout=2;$ch[$nch] = curl_init();curl_setopt_array($ch[$nch], array( CURLOPT_URL => $url, CURLOPT_HEADER => false, CURLOPT_RETURNTRANSFER => true, CURLOPT_TIMEOUT => $timeout,));curl_multi_add_handle($mh, $ch[$nch]);++$nch; } /* wait for performing request */ do {$mrc = curl_multi_exec($mh, $running); } while (CURLM_CALL_MULTI_PERFORM == $mrc); while ($running && $mrc == CURLM_OK) {// wait for networkif (curl_multi_select($mh, 0.5) > -1) { // pull in new data; do {$mrc = curl_multi_exec($mh, $running); } while (CURLM_CALL_MULTI_PERFORM == $mrc);} } if ($mrc != CURLM_OK) {error_log('CURL Data Error'); } /* get data */ $nch = 0; foreach ($urlarr as $moudle=>$node) {if (($err = curl_error($ch[$nch])) == ’’) { $res[$nch]=curl_multi_getcontent($ch[$nch]); $result[$moudle]=$res[$nch];}else{ error_log('curl error');}curl_multi_remove_handle($mh,$ch[$nch]);curl_close($ch[$nch]);++$nch; } curl_multi_close($mh); return $result;}$url_arr=array( 'taobao'=>'http://www.taobao.com', 'sohu'=>'http://www.sohu.com', 'sina'=>'http://www.sina.com.cn', );function microtime_float(){ list($usec, $sec) = explode(' ', microtime()); return ((float)$usec + (float)$sec);}$time_start = microtime_float();$data=curl_multi_fetch($url_arr);$time_end = microtime_float();$time = $time_end - $time_start; echo '耗時(shí):{$time}';?>

耗時(shí):0.316秒 帥氣吧整個(gè)頁(yè)面訪(fǎng)問(wèn)后端接口的時(shí)間節(jié)省了一半

原文:http://www.searchtb.com/2010/12/using-multicurl-to-improve-performance.html

標(biāo)簽: PHP
相關(guān)文章:
主站蜘蛛池模板: 定量包装秤,吨袋包装称,伸缩溜管,全自动包装秤,码垛机器人,无锡市邦尧机械工程有限公司 | 工业CT-无锡璟能智能仪器有限公司 | 生态板-实木生态板-生态板厂家-源木原作生态板品牌-深圳市方舟木业有限公司 | 便携式表面粗糙度仪-彩屏硬度计-分体式粗糙度仪-北京凯达科仪科技有限公司 | 深圳激光打标机_激光打标机_激光焊接机_激光切割机_同体激光打标机-深圳市创想激光科技有限公司 深圳快餐店设计-餐饮设计公司-餐饮空间品牌全案设计-深圳市勤蜂装饰工程 | PCB设计,PCB抄板,电路板打样,PCBA加工-深圳市宏力捷电子有限公司 | 旗帜网络笔记-免费领取《旗帜网络笔记》电子书 | 常州企业采购平台_常州MRO采购公司_常州米孚机电设备有限公司 | 广州网站建设_小程序开发_番禺网站建设_佛山网站建设_粤联网络 | 999范文网_优质范文下载写作帮手 | 时代北利离心机,实验室离心机,医用离心机,低速离心机DT5-2,美国SKC采样泵-上海京工实业有限公司 工业电炉,台车式电炉_厂家-淄博申华工业电炉有限公司 | 氧化锆陶瓷_氧化锆陶瓷加工_氧化锆陶瓷生产厂家-康柏工业陶瓷有限公司 | 咖啡加盟,咖啡店加盟连锁品牌-卡小逗 | 珠海网站建设_响应网站建设_珠海建站公司_珠海网站设计与制作_珠海网讯互联 | 昆明网络公司|云南网络公司|昆明网站建设公司|昆明网页设计|云南网站制作|新媒体运营公司|APP开发|小程序研发|尽在昆明奥远科技有限公司 | 找果网 | 苹果手机找回方法,苹果iPhone手机丢了找回,认准找果网! | 数控走心机-双主轴走心机厂家-南京建克| 存包柜厂家_电子存包柜_超市存包柜_超市电子存包柜_自动存包柜-洛阳中星 | 水压力传感器_数字压力传感器|佛山一众传感仪器有限公司|首页 | 爆破器材运输车|烟花爆竹运输车|1-9类危险品厢式运输车|湖北江南专用特种汽车有限公司 | 华禹护栏|锌钢护栏_阳台护栏_护栏厂家-华禹专注阳台护栏、楼梯栏杆、百叶窗、空调架、基坑护栏、道路护栏等锌钢护栏产品的生产销售。 | 耐压仪-高压耐压仪|徐吉电气| 安徽合肥项目申报咨询公司_安徽合肥高新企业项目申报_安徽省科技项目申报代理 | 温州中研白癜风专科_温州治疗白癜风_温州治疗白癜风医院哪家好_温州哪里治疗白癜风 | 冷轧机|两肋冷轧机|扁钢冷轧机|倒立式拉丝机|钢筋拔丝机|收线机-巩义市华瑞重工机械制造有限公司 | 底部填充胶_电子封装胶_芯片封装胶_芯片底部填充胶厂家-东莞汉思新材料 | 中医治疗皮肤病_潍坊银康医院「山东」重症皮肤病救治平台 | 欧美日韩国产一区二区三区不_久久久久国产精品无码不卡_亚洲欧洲美洲无码精品AV_精品一区美女视频_日韩黄色性爱一级视频_日本五十路人妻斩_国产99视频免费精品是看4_亚洲中文字幕无码一二三四区_国产小萍萍挤奶喷奶水_亚洲另类精品无码在线一区 | 齿轮减速马达一体式_蜗轮蜗杆减速机配电机-德国BOSERL齿轮减速电动机生产厂家 | 气胀轴|气涨轴|安全夹头|安全卡盘|伺服纠偏系统厂家-天机传动 | 并离网逆变器_高频UPS电源定制_户用储能光伏逆变器厂家-深圳市索克新能源 | 蓄电池在线监测系统|SF6在线监控泄露报警系统-武汉中电通电力设备有限公司 | 托盘租赁_塑料托盘租赁_托盘出租_栈板出租_青岛托盘租赁-优胜必达 | 德国GMN轴承,GMN角接触球轴承,GMN单向轴承,GMN油封,GMN非接触式密封 | 迪威娱乐|迪威娱乐客服|18183620002 | 对辊破碎机-液压双辊式,强力双齿辊,四辊破碎机价格_巩义市金联机械设备生产厂家 | 上海皓越真空设备有限公司官网-真空炉-真空热压烧结炉-sps放电等离子烧结炉 | 垃圾处理设备_餐厨垃圾处理设备_厨余垃圾处理设备_果蔬垃圾处理设备-深圳市三盛环保科技有限公司 | 高低温试验房-深圳高低温湿热箱-小型高低温冲击试验箱-爱佩试验设备 | 在线浊度仪_悬浮物污泥浓度计_超声波泥位计_污泥界面仪_泥水界面仪-无锡蓝拓仪表科技有限公司 | 凝胶成像仪,化学发光凝胶成像系统,凝胶成像分析系统-上海培清科技有限公司 |