CDN - 访问出现 503 排查

简介: 场景 用户在阿里云做 CDN 加速后,加载 URL 时返回 503 状态码; curl -I http://z2.alx.yas.com/uploads/basedata/images/1fcb73c76821610a6d265af01a10f045.

作者:张医博

场景

用户在阿里云做 CDN 加速后,加载 URL 时返回 503 状态码;

curl -I http://z2.alx.yas.com/uploads/basedata/images/1fcb73c76821610a6d265af01a10f045.png 
HTTP/1.1 503 Service Temporarily Unavailable
Server: Tengine
Content-Length: 0
Connection: keep-alive
Via: cache29.l2cn1828[0,503-256,M], cache7.l2cn1828[10002,0], vcache5.cn627[10025,503-1281,M], vcache5.cn627[10022,10026,0]
X-Swift-Error: forward no peer valid
Age: 0
Ali-Swift-Global-Savetime: 1566887228
X-Cache: MISS TCP_MISS dirn:-2:-2
X-Swift-SaveTime: Tue, 27 Aug 2019 06:27:08 GMT
X-Swift-CacheTime: 1
X-Swift-Error: orig response 5xx error
Timing-Allow-Origin: *
EagleId: 7909f64515668872085932615e

问题排查

第一、客户端可以用 curl、wget 或者浏览器测试,将返回 503 时的 http 响应头保留下来;

curl -I http://z2.alx.yas.com/uploads/basedata/images/1fcb73c76821610a6d265af01a10f045.png --resolve basedata.azoyacdn.com:80:121.9.46.110
HTTP/1.1 503 Service Temporarily Unavailable
Server: Tengine
Content-Length: 0
Connection: keep-alive
Via: cache29.l2cn1828[0,503-256,M], cache7.l2cn1828[10002,0], vcache5.cn627[10025,503-1281,M], vcache5.cn627[10022,10026,0]
X-Swift-Error: forward no peer valid
Age: 0
Ali-Swift-Global-Savetime: 1566887228
X-Cache: MISS TCP_MISS dirn:-2:-2
X-Swift-SaveTime: Tue, 27 Aug 2019 06:27:08 GMT
X-Swift-CacheTime: 1
X-Swift-Error: orig response 5xx error
Timing-Allow-Origin: *
EagleId: 7909f64515668872085932615e

从 CDN 返回的 503 http 响应头可以看到几个重要信息:

1) X-Swift-Error: orig response 5xx error

  • 通过 X-Swift-Error 返回的信息,可以初步判断 503 是因为 CDN 回源后响应的 503;

2) http 返回的 Via 头

  • Via 头含义,从右到左依次是 L1 节点回源字段,vcache5.cn627[10025,503-1281,M], vcache5.cn627[10022,10026,0] ,L2 节点的回源字段 cache29.l2cn1828[0,503-256,M], cache7.l2cn1828[10002,0]
  • 在 L2 的字段段看到 [] 内的 10002 就是回源的超时时间,综合判断可知是因为 L2 回源后,超时未得到原站的响应(比如读、写超时)导致的 503;

第二、固定原站做七层测试

Linux 测试

原站是 80 端口

curl -vo /dev/null "http://z2.alx.yas.com/" -x 原站IP:原站端口

原站是 443 端口

curl -vo /dev/null "http://z2.alx.yas.com/" --resolve "z2.alx.yas.com:原站IP:原站端口"

Windows 测试

1)先编辑

C:\Windows\System32\drivers\etc\hosts

2)在 hosts 中配置原站 IP: 原站IP z2.alx.yas.com
3)浏览器发起 http/https 请求,如果原站 http 端口不是 80 ,浏览器访问时需要在域名后手动加上原站的自定义端口

http://z2.alx.yas.com:8080

第三、测试原站四层的端口,看响应时间是否正常

time telnet 原站IP 原站端口,如果发现四层的端口响应很慢,侧面说明原站七层的应用负载较高,或者服务器负载异常,需要原站自查;

第四、对原站做网络测试

ping 原站IP -c 50 -s 1460 -i 0.1
mtr -n 原站IP

通过以上两个网络测试命令,看下普通的客户端到原站的延迟是否稳定,丢包率是否异常,如果普通的客户端测试到原站延迟、丢包都有异常,那 CDN 回源可能也有问题,发现原站如果网络异常,需要客户先自查下;

第五、以上四点测试均正常,需要 CDN 测进行日志分析,请提交工单到阿里云;

提供如下信息:

1)加载 503 的 URL ,最好能提供报错的完整响应头;
2)客户端 ping 下 CDN 域名看目标的 CDN ;
3)大面积的 503 ,还是个别客户加载 503 ,大面积的问题存在共性;
4)客户端的 IP(获取工具 https://cdn.dns-detect.alicdn.com/https/doc.html),以及大致的错误时间点;

相关文章
|
1月前
|
域名解析 缓存 监控
阿里云渠道商:如何排查阿里云CDN访问问题?
排查阿里云CDN访问问题需分步诊断:先检查DNS解析与CDN基础配置,再根据访问慢、内容未更新或50x错误等现象定位原因,结合ping、tracert及阿里云实时日志、节点检测等工具深度分析。掌握此流程,快速解决异常。
|
域名解析 缓存 前端开发
前端性能优化 实际应用cdn 加快静态资源访问
前端性能优化 实际应用cdn 加快静态资源访问
前端性能优化 实际应用cdn 加快静态资源访问
|
3月前
|
存储 缓存 网络协议
如何使用CDN加速访问OSS存储的图片资源?
通过阿里云CDN加速OSS上的图片和视频资源,可显著提升访问速度、降低带宽成本。CDN将静态资源缓存至离用户最近的节点,减少加载时间,并提供图像处理、缓存优化等功能,提升用户体验。同时,CDN还支持访问数据分析,助力运营决策。本文详解如何通过CDN控制台配置OSS加速,包括添加域名、设置CNAME、配置缓存策略等步骤,帮助您快速实现资源加速。
|
1月前
|
缓存 安全 网络安全
阿里云渠道商:怎么通过阿里云CDN提高全球用户的访问体验?
阿里云CDN通过全球2800+节点、智能调度、性能优化与安全防护三大技术,实现低延迟、高稳定的内容分发,助力企业提升全球访问体验,让业务如本地般流畅。
|
存储 人工智能 缓存
AI助理直击要害,从繁复中提炼精华——使用CDN加速访问OSS存储的图片
本案例介绍如何利用AI助理快速实现OSS存储的图片接入CDN,以加速图片访问。通过AI助理提炼关键操作步骤,避免在复杂文档中寻找解决方案。主要步骤包括开通CDN、添加加速域名、配置CNAME等。实测显示,接入CDN后图片加载时间显著缩短,验证了加速效果。此方法大幅提高了操作效率,降低了学习成本。
5877 16
|
缓存 网络安全 数据安全/隐私保护
使用阿里云国际CDN加速后网站无法访问的排查步骤
使用阿里云国际CDN加速后网站无法访问的排查步骤
|
缓存 边缘计算 网络协议
CDN永远的神!成功解决了困惑我多年的GitHub访问太慢问题
我写技术文章画的图片是保存到 GitHub 的,没别的原因,就是因为免费,但是GitHub 访问的速度大家都懂的,访问的速度很慢。 所以我会用 CDN 来加速图片的访问,也就是我的图床的方案是 GitHub + jsdelivr CDN,使用很简单,只需要把域名地址替换一下就行。
|
边缘计算 监控 前端开发
利用阿里云Eventbridge在CDN边缘应用程序中访问日志服务SLS
在Web前端领域,追求极致性能是个永恒的话题。这些年的一些新兴理念都是为了提升站点访问性能而提出,无论是Jamstack技术理念或者或者 ESR (边缘渲染),都是Client侧进行性能优化的基础上,进一步拓展到了网络Infra层面,就是我们现在经常讨论的边缘计算。而阿里云的CDN EdgeRoutine 就是为广大客户提供可自由编程的边缘计算能力,我们可以用他来构建边缘节点的网关应用,来访问静态资源或者后端服务。当这个边缘网关在业务上承担的角色越来越重要的时候,我们就对他内部的业务逻辑产生了可观测的诉求,希望能够记录日志到日志服务上,然而日志服务提供的SDK,在ER的环境中暂时不被支持,这个
476 0
|
存储 CDN
jsdelivr cdn大陆挂了不能访问替代方案
jsdelivr cdn大陆挂了不能访问替代方案
1865 0
jsdelivr cdn大陆挂了不能访问替代方案
|
1月前
|
缓存 前端开发 JavaScript
适合阿里云CDN分发的文件类型有哪些?
静态文件如网页、图片、视频等适合CDN分发,可提升加载速度,减轻源站压力。动态、私有或频繁变更内容则不适合。合理选择资源包,助力高效上云。

热门文章

最新文章

下一篇
oss云网关配置