【 OSS 排查方案-9 上传 OSS 延迟超时】

本文档详细介绍了排查OSS上传延迟的各种方法,包括基础排查、案例分析等。基础排查涉及requestID、内网地址使用、网络出口、带宽、TCP连接等。案例中提到了CRC64开启导致的速度下降、JAVA SDK的性能问题、DNS解析问题、跨国传输问题等,提供了解决方案和优化建议。
摘要由CSDN通过智能技术生成

基础排查

一、

上传 OSS 出现慢的场景,OSS 会返回一个 requestID 属性,请保留这个 requestID 这是 OSS 所有信息的查询入口,升级阿里云时可以快速定位问题,如果上传超时的话时没有这个属性的。 requestID 可以通过抓包获取到,也可以在代码中解析 OSS 的返回 http result 结果获得。

2

二、

客户端在上传 OSS 时用的内网的地址还是公网的 OSS 地址,如果使用了阿里云主机服务,并且和 OSS 是同一个 region ,强烈推荐使用 internal 内网地址操作 OSS 这能大大提升你的请求速度。OSS 提供的域名可以参考
https://help.aliyun.com/document_detail/31837.html?spm=a2c4g.11186623.6.571.4dcd2841C29fHi

三、

如果走公网上传 OSS ,速度无法保证,排查需要结合多个网络测试命令,比如常用
ping -c 50 -i 0.01 -s 1024 <OSS 公网域名>
mar <OSS 公网域名>
traceroute <OSS 公网域名> ,如下测试客户端的网络出口也不是很稳定,需要多次的测试。

3

四、

排除客户端出口带宽是否被打满,可以通过 iftop 看下客户端的出口流量。

五、

etstat 查看下主机的 TCP 链接是否被打高

六、

客户端的上传代码读取的是本地文件还是网络流,如果是读取的网络流然后上传到 OSS ,那读文件的时间也会影响到上传时间。建议用本地文件先测试。

七、

客户端的代码是否开启过 crc64 ,开启这个功能对上传的性能影响比较大,开启 crc 后,要在本地先对文件循环冗余校验完后,在开始上传,很消耗性能。

"看病" 对号入座,按照上面描述的分成多个问题进行描述,基本都是上传延迟的问题。

案例:开启 crc64 上传速度下降

4

该病例,使用 ossutil 工具对比 OSS 的 SDK 上传速度比 osstuil 慢几十倍。

  • 通过截图也能看出来确实慢,但是 SDK 即使代码写的再差也不能如此地步。
  • 翻阅代码中发现 OSS SDK 在初始化 ossclient 时开启了 crc64 ,关闭后性能直线上升,回复到正常状态,秒传。
auth = oss2.Auth('AK', 'SK')
bucket
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值