问题描述

上传同一个文件(32kb)有时候需要2s,但有时候需要11s,上传速度太不稳定,且太慢。

上传的过程是由前端上传文件到后端php(使用yii2框架)的接口,由php调qiniu的sdk上传方法。经过排查,前端上传文件到php后端所在的服务器时间很短在几百毫秒内,可忽略不计。想问一下为何上传到七牛的过程这么慢,如何解决这个问题,因为系统快要使用,所以还对上传这个事情还比较急。

问题出现的环境背景及自己尝试过哪些方法

排查过前端上传文件到服务端的时间不慢,也排查过网速。

相关代码

// 请把代码文本粘贴到下方(请勿用图片代替代码)

/**

七牛云存储组件

*

*/

namespace appcommoncomponents;

use Yii;

use yiibaseComponent;

use QiniuAuth;

use QiniuStorageUploadManager;

class Qiniu extends Component

{

public $accessKey;

public $secretKey;

public $auth;

public $defaultBucket;

public $privateBucket;

public $cdnHost;

public function init()

{

parent::init();

$this->auth = new Auth($this->accessKey, $this->secretKey);

}

/**

* 上传文件到七牛

*

* @param string $filePath 需要上传的文件路径

* @param string $key 在七牛上存储的文件名

*

* @return string 上传后文件访问的地址

*/

public function upload($filePath, $key, $bucket = null)

{

$uploadMgr = new UploadManager();

$bucket = empty($bucket) ? $this->defaultBucket : $bucket;

$token = $this->auth->uploadToken($bucket);

list($ret, $err) = $uploadMgr->putFile($token, $key, $filePath);

if ($err !== null) {

Yii::$app->response->error(

Yii::$app->response->resCode['ERROR_QINIU_UPLOAD_FAILED'],

'Upload to qiniu failed.'

);

} else {

return $ret['key'];

}

}

/**

* 生成七牛 CDN URL

*

* @param string $key 相对路径

*

* @return string

*/

public function generateUrl($key, $hostType = 'default')

{

return !empty($key) ? $this->cdnHost[$hostType] . trim($key, '/') : '';

}

}

你期待的结果是什么?实际看到的错误信息又是什么?

上传几十kb的文件不至于这么慢啊,希望有人碰到过这种情况可以帮忙解决,谢谢各位?

php大图片接口上传慢,七牛php sdk上传文件太慢相关推荐

  1. 使用七牛的sdk上传报错:incorrect region

    报错响应大致如下 exception:None, status_code:404, _ResponseInfo__response:<Response [404]>, text_body: ...

  2. 使用百度webuploader上传组件直接上传到七牛云表单上传

    上一节我们已经讲过了使用表单上传,这一节我们来讲一下使用webuploader来进行异步上传到七牛云服务器. 点击查看,七牛云表单上传 1.引入webuploader的js和样式表 2.写js代码 其 ...

  3. 七牛云 转码_七牛云存储 - 七牛 php sdk 上传 转码 问题

    实在是不会用 sdk 呀 都蒙圈了 求大神 指点 vendor('Qiniu.io'); vendor('Qiniu.rs'); $bucket = 'icunzai-voice'; $key = $ ...

  4. laravel上传到七牛图片插件

    1.首先引入两个插件 2.在https://developer.qiniu.com/kodo/sdk/1241/php找到安装命令 在终端运行composer require qiniu/php-sd ...

  5. Vue爬坑之旅(二十一):vue使用富文本编辑器vue-quill-editor实现配合后台将图片上传至七牛

    一.全局注册:main.js import Vue from 'vue' import VueQuillEditor, { Quill } from 'vue-quill-editor' import ...

  6. 七牛HTML 上传按钮,七牛 JSSDK 配置+常见问题

    作者:娇娇jojo 时间:2018年6月19日 一.铺垫 依靠七牛上传图片,其实有很多方法,先说说有哪些方法,以及这些方法各自的优缺点吧(移动端). way1:前端只负责选择图片,然后将图片传给服务端 ...

  7. 七牛云图床php,PHP实现Markdown文章上传到七牛图床的实例内容

    在使用 Markdown 编写文章之后,经常需要发布到不同的平台,这里会遇到一个问题,文章的图片需要手动的进行上传,管理起来非常不方便,因此,强烈建议将图片统一上传到图床中,这样的话一篇文章就可以轻松 ...

  8. H5 将html页面内容生成图片并上传至七牛

    小编最近在做项目时遇到一个问题,那就是,需要将html页面生成图片后并传给app客户端,至于为什么要传给客户端,自然是因为小编的这个项目是客户端中嵌入h5页面,故而需要和客户端内部交互.那么问题就来了 ...

  9. android七牛多张图片上传

    将多张图片上传到七牛,需要一张张上传 七牛android SDK使用指南http://developer.qiniu.com/code/v7/sdk/android.html 将图片上传到七牛服务器的 ...

最新文章

  1. Ctex软件介绍安装破解(是WinEdt_v6.0破解)
  2. mysql基础(3)-高级查询
  3. 偏移出来的数据不准_独家解读!京东高可用分布式流数据存储的架构设计
  4. 【翻译】Ext JS 4——Ajax和Rest代理处理服务器端一场和消息的方法
  5. shell 脚本中 while 只执行一次
  6. v-model数据绑定分析
  7. m7405d粉盒清零方法_联想打印机计数器怎么清零?一体机硒鼓怎么清零?看这一篇就够...
  8. android系统(3)---dumpsys 知识学习
  9. python通过什么对象连接数据库_干货!python与MySQL数据库的交互实战
  10. Android-Apk插件化研究
  11. python入门代码大全-初学python有哪些可以临摹的小段练习代码素材?
  12. Linux服务器时间快8个小时,Linux系统时间快8小时解决方案
  13. 基于SSM框架开发的社区疫情管理系统 附带详细运行指导视频
  14. 安装EUCALYPTUS
  15. LaTeX安装环境和软件下载地址
  16. 在注视之外:对于认知和认知发展研究,眼动追踪还能揭示什么?
  17. web前端30个项目列表,学完即可上手做项目
  18. 鸿蒙比安卓流畅,华为鸿蒙系统首升用户体验:流畅得不像话,专属应用体积超小!...
  19. Luogu5149会议座位
  20. PHP常用的文件操作函数集锦

热门文章

  1. SAP各模块及主要模块所对应的常用表
  2. 下级路由访问上级文件服务器,怎样访问下一级路由器问答
  3. 【51NOD 1501】【51NOD 算法马拉松19】石头剪刀布威力加强版
  4. 2020全国商标注册量TOP 10的代理机构都拥有自己的互联网平台
  5. 集成项目管理交付清单
  6. 国际大牌辐轮王自行车赞进博会上榜2020年中国会展业十大新闻
  7. 三 通用目标之make vmlinux的执行过程分析
  8. bizCharts添加暂无数据
  9. 设置谷歌邮箱gmail转发到qq邮箱550 DMARC check failed
  10. 数据库事务ACID特性