OSS “RequestTimeTooSkewed”

简介: RequestTimeTooSkewed 经常遇到,但是原因比较多,分析难以下手,具体的表象可以看下面的截图,由于客户端(下文称之为 client)发出的请求时间和实际上服务端(下文称之为 oss) 收到的时间差大雨 15min 导致(oss Time - client Time > 15min) 时间标准 先排除掉最简单的问题,确认时间是否为标准的 UTC、GMT、CST 时间,如果时区不是东八区,只要换算成 +8 小时一致即可。

作者:张医博

RequestTimeTooSkewed

  • 经常遇到,但是原因比较多,分析难以下手,具体的表象可以看下面的截图,由于客户端(下文称之为 client)发出的请求时间和实际上服务端(下文称之为 oss) 收到的时间差大雨 15min 导致(oss Time - client Time > 15min)

image.png

时间标准

  • 先排除掉最简单的问题,确认时间是否为标准的 UTC、GMT、CST 时间,如果时区不是东八区,只要换算成 +8 小时一致即可。有的人可能使用自己的 NTP 时钟同步出现异常,导致 client 和 oss 收到时间相差 15min
    image.png

排查代码

  • 如果是用阿里云的 OSS SDK 的话,先检查下 OSS SDK 初始化链接数是多大,client 的并非请求是否已经超过了 SDK 的设置。

以下用 JAVA SDK 为例子默认的 maxconnect 是 1024 。在本机执行 netstat 命令看下 client 程序对应的 TCP 链接数有没有超过 1024。

排查主机问题

  • 使用 netstat 命令看下主机的 TCP 链接数(UDP TCP) 有没有超过 ulimit 的设置。
  • 查看主机出口的网络带宽有没有被打满

是有经过网络代理

  • client 是直传到 OSS ,还是经过 proxy 传输到 OSS ,如果有代理先要排查 client 到 proxy 链路是否有抖动丢包重传,以及 proxy 到 OSS 的链路。
  • proxy 如果链接数或者带宽被打满都会造成上传延迟、拥堵,导致 RequestTimeTooSkewed

排查网络问题
如果使用阿里云的 ECS 建议走内网的 internal 形式的域名操作 OSS 这个是阿里云内部网络,性能很稳定速度也很快,如果走公网的话并不是很可靠。
走公网的情况就需要做测试了。

  • 如果 client 到 OSS 是走公网上传下载,发生 RequestTimeTooSkewed 问题时,可以同步 ping -c 50 -i 0.01 -s 1024 通过 ping 可以发现有抖动和丢包。

image.png

  • traceroute 看下每一跳的延迟
  • mtr 看下公网链路是否有丢包。
  • 当时异常方法都查不到原因只能使用终极办法 tcpdump 、或者 Wireshark 抓包。

tcpdump -i <出口网卡> -s0 host -w slow_packet.pacp

相关实践学习
通义万相文本绘图与人像美化
本解决方案展示了如何利用自研的通义万相AIGC技术在Web服务中实现先进的图像生成。
相关文章
|
安全 Java
jdk9模块化
本文介绍了JDK 9引入的模块化系统,解释了模块化的概念、好处,包括提高安全性、可维护性和减少冲突及加快启动时间,并举例说明了如何使用module-info.java文件来定义模块依赖和暴露的包。
315 2
|
9月前
|
存储 安全 Linux
CentOS 7.9系统备份:每日定期发送最新备份文件到另一台服务器。
注意,这个解决方案忽略了很多细节,例如错误处理和通知、备份版本控制、循环处理旧的备份文件等等。此外,你也应该尽量保持源服务器和目标服务器之间快速,稳定且安全的网络连接,并且目标服务器应该有足够的空间用于存放每天的备份文件。如果你需要更高级的备份解决方案,可能需要考虑一下使用专门的备份工具或者服务。
423 18
|
SQL 分布式计算 数据挖掘
PyODPS
【7月更文挑战第19天】
504 2
|
数据采集 监控 Kubernetes
【最佳实践】使用CloudLens排查iLogtail采集配置错误问题
本文主要介绍如何使用CloudLens for SLS定位和解决iLogtail日常使用中的常见问题之一:采集配置错误问题。
1260 0
【最佳实践】使用CloudLens排查iLogtail采集配置错误问题
|
存储 SQL 数据管理
字节跳动基于Apache Hudi构建实时数据湖平台实践
字节跳动基于Apache Hudi构建实时数据湖平台实践
828 0
|
监控 Kubernetes 应用服务中间件
【最佳实践】使用CloudLens排查文件/目录数超限问题(STAT_LIMIT_ALARM, DIR_EXCEED_LIMIT_ALARM)
本文主要介绍如何使用CloudLens for SLS定位和解决iLogtail日常使用中的常见问题之一:包括STAT_LIMIT_ALARM, DIR_EXCEED_LIMIT_ALARM等诊断错误的文件/目录数超限问题,。
1747 0
|
监控 网络协议 算法
连接重置常见原因及排查方法
与 SYN/FIN 类似,TCP RST 报文也是控制类报文的一种,可以改变TCP 状态也可以用于响应未预期的报文,在TCP Header 中的Flags 字段内标记。相比于其他报文,RST 包是专门为了处理一些异常状态而设计的,通常由协议栈本身使用,业务应当只在“不得不”的情况下使用RST强行终止连接,那么RST 的场景到底有哪些呢,该如何排查RST 问题,其实都是有套路的,请看下文。
25340 4
连接重置常见原因及排查方法
|
存储 运维 容灾
打造具备极致容灾能力的对象存储
本文介绍本地冗余,做了哪些容灾设计、应对AZ故障的ZRS(同城冗余)产品的容灾设计以及应对Region故障的跨区域复制功能。
20582 2
打造具备极致容灾能力的对象存储
|
SQL 分布式计算 自然语言处理
基于antlr-3.5.2+Python实现一般HiveSQL血缘解析(一)
基于antlr-3.5.2+Python实现一般HiveSQL血缘解析(一)
967 0
基于antlr-3.5.2+Python实现一般HiveSQL血缘解析(一)