一次CDN源站负载高的问题排查及解决
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了一次CDN源站负载高的问题排查及解决相关的知识,希望对你有一定的参考价值。
最近总是收到后端的CDN源站的负载高的报警,Apache经常会触发重启。于是启动排查问题。
我们的CDN架构如下:
我们的CDN缓存策略是:使用源站的缓存策略,源站缓存策略是365天
。
首先查看Apache的访问日志:
错误日志里有大量的回源,内部程序逻辑是:如果文件不存在,就回去COS里去取,然后存放到源站一份。源站上有定期清理磁盘的程序。
正常情况下,回源不会有这么多,所以去查看一下cdn的缓存情况。
1、获取CDN的节点IP:
命令:dig pic1.xxxx.com
2、通过指定节点,查看访问资源的命中情况:
看到最后的结果都是MiSS,理论上两个节点有一个HIT即可。
在测试过程中,偶尔有HIT,绝大多数的情况是MISS,即没有命中,就会导致访问回源。说明CDN上并没有缓存住资源,绝大多数访问直接打到源站上,所以源站负载撑不住了。
联系CDN服务商,服务商回复说最近新增加了多个边缘节点,可能会有一些问题导致以上情况,但是最近情况仍在继续,为了避免再次出现问题,我们将CDN由迅达云切换到了腾讯云上,问题暂时得到解决。
以上是关于一次CDN源站负载高的问题排查及解决的主要内容,如果未能解决你的问题,请参考以下文章