PHP从串行请求到并行请求的优化处理

会吃米的鱼
  • 3
新手上路,请多包涵

现在项目中将所有附件上传到了七牛云,前台页面展示的时候需要获取图片附件的下载链接,最开始写的是放在for循环里面循环获取,但如果图片多了的话,发现串行执行的等待时间太长了,求大神指点下怎么优化下

foreach($data['root'] as &$v){
            $v['at_time']=date('Y-m-d H:i:s',$v['at_time']);
            $aturl = $v['at_url'];
            if($v['at_name']!=='征信文档'){
                $url = A('Qiniu')->get_qiuniu_down($aturl);
                $v['at_url'] = $url['aturl'];
                $v['m_url'] = $url['m_url'];
            }
        }
回复
阅读 2.5k
8 个回答

如果是public的就直接拼接url

怎么会还要去七牛获取地址。。不是传的时候就有地址了。

yield 使用协程

使用curl_multi+yield,具体可以参考github ybc429710096/scheduler

重构吧,改成php端生成密钥,使用js批量获取抵制,七牛有SDK的。

宣传栏