影响文件上传Waiting(TTFB)时间长的因素以及解决办法

背景

前段时间前端同事在调后台文件上传接口的时候反应文件上传接口很慢。通过查看后台日志,发现文件上传接口的实际请求与响应在1秒以内,但是前端调用接口的请求与响应在5秒以上,通过Chrome调试,返现问题出在Waiting(TTFB)时间过长。

什么是 Waiting (TTFB)

TTFB: 是“最初的网络请求被发起”到“从服务器接收到第一个字节前”所花费的毫秒数。

影响的因素

  • 服务器阻塞
    浏览器对同一个主机域名的并发连接数有限制,因此如果当前的连接数已经超过上限,那么其余请求就会被阻塞,等待新的可用连接;此外脚本也会阻塞其他组件的加载。
  • 域名解析
    请求某域名下的资源,浏览器需要先通过DNS解析器得到该域名服务器的IP地址。在DNS查找完成之前,浏览器不能从主机名那里加载到任何东西。
  • TCP建立
    http连接的建立需要经过三次握手的时间,而https会在此基础上增加SSL时间。
  • 带宽限制
    以 2M 带宽为例:
    2M 的ADSL 理论上下载速度是 2048/8=256 bytes/s(字节每秒)但实际上最高也就每秒240、250字节左右;
    上传速度一般是下载速度的1/4 也就是512K ,512/8=64 bytes/s 实际在每秒50字节左右

测试

知道了影响因素,加上实际场景,服务器阻塞的情况不会遇到,所以不做测试。

以上传2.04M的图片为例:

  1. 域名解析:
    localhost:Waiting(TTFB)耗时3.12秒
    在这里插入图片描述
    本地IP 127.0.0.1:Waiting(TTFB)耗时1.84秒 在这里插入图片描述

  2. 带宽限制:
    本地局域网:Waiting(TTFB)耗时3.12秒 在这里插入图片描述
    阿里云服务器(1M带宽):Waiting(TTFB)耗时23.63秒 在这里插入图片描述

总结

项目部署的云服务器的带宽只有1M,带宽不足是造成Waiting(TTFB)的主要原因,所以适当的提升带宽就可以解决此问题。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值