阿里雲 CDN 問題排查

CDN 幾種使用常見的架構

這裏寫圖片描述
這裏寫圖片描述
這裏寫圖片描述

CDN診斷工具:

1、client 出口 IP,DNS 訪問到的 CDN 節點 IP https://cdn.dns-detect.alicdn.com/https/doc.html; (阿里排障工具)
這裏寫圖片描述
2. 查看訪問IP地址釋放爲阿里雲CDN的IP
這裏寫圖片描述
3. 頁面檢查工具
這裏寫圖片描述
4. 瀏覽器查看CDN信息
這裏寫圖片描述

5.用的 Linux 基礎命令用來測試
curl -I taobao.com
這裏寫圖片描述

curl -X POST|HEAD|PUt -H “key: value” 模擬請求頭和請求類型的命令

wget –Header=”key:value”

traceroute -n taobao.com (查看網絡鏈路問題)

mtr -r -n taobao.com (查看網絡鏈路問題)

tcpdump -i devname -s0 -v host x.x.x.x and port xx -w filename.pcap

ping -c 100 -s 1024 -i 0.01 -d taobao.com (延時,解析到的IP地址)

ping -w 1 taobao.com

CDN 常見問題

域名接入無法訪問

  • 首先看一下接入域名是否已經解析到了阿里雲CDN,使用dig命令來看一下域名的解析
    dig www.youdomainname.com
    如果域名解析到帶有kunlun字樣的域名則說明已經解析到了cdn了
    這裏寫圖片描述
  • 看一下源站是否存在問題,直接修改本地hosts文件,訪問源站看是否有問題。
    vim /etc/hosts
    如下圖,寫ip地址,空格自己的域名,那麼當您清除了瀏覽器的緩存記錄,並重新開啓瀏覽器進行訪問時,您將直接從1.1.1.1這個源站IP獲取數據,不再經過CDN,
    這裏寫圖片描述

CDN訪問異常的時候如何排查

  1. ping域名 ,查看解析出的IP是否是阿里雲CDN的節點,參考CDN節點IP查詢方法來查看IP是不是阿里雲CDN的節點。
  2. 如果不是阿里雲CDN節點的IP,那麼說明被劫持的,建議向客戶端訪問所在網絡運營商進行投訴。
  3. 如果是阿里雲CDN的節點IP,且能ping通域名,那麼本地域名綁定host測試,看下是CDN問題還是源站問題。具體操作步驟請參考CDN訪問異常。
  4. 如果檢查下來源站不能訪問,那麼檢查源站。如果源站可以訪問,通過CDN無法訪問,那麼把ping域名截圖和訪問按照這個鏈接http://tool.alikunlun.com/doc.html 的截圖保留下來一併提交工單聯繫我們。
  5. 如果是阿里雲CDN的節點IP,但是ping域名不通,可能是網絡或者CDN節點有問題。通過mtr到域名(mtr使用介紹請參考ping丟包或不同時鏈路測試說明)的路由跟蹤截圖、訪問http://tool.alikunlun.com/doc.html 這個鏈接的截圖和ping域名的截圖都保留下來一併提交工單聯繫我們。

使用CDN後網站訪問變慢問題分析方法

CDN服務的主要功能就是進行網站訪問加速,有的網站使用CDN後,訪問速度反而會比不用CDN的的情況還要慢?

本文就是針對這種情況提供問題排查的思路和方法,

出現這種問題常見的有兩種可能場景。

一、緩存命中率不高,影響緩存命中率的常見的幾個原因如下:

 緩存配置的問題

 頻繁的刷新url或者目錄緩存

 Http Header導致無法緩存

 剛添加,緩存的文件還不多

 源站類型,可緩存的內容少

 網站訪問量低,過期時間短,命中的文件少

二、局部地區訪問速度較慢,個別區域動態文件回源較慢。

只要是文件被CDN 緩存後,CDN 訪問就會比源站訪問快些的。出現這種請可以參考如下的排查思路進行定位:

1、測試域名解析是否正確,以確保您的應用已經正常解析到CDN 上。常用的命令是ping 域名即可

2、測試域名進行訪問,在本地電腦上使用開發工具F12 ,然後按住Ctrl+F5 多刷新幾次,找一些靜態頁面判斷一下是否已經被緩存,主要看x-catch 是否已經hit。hit說明已經命中,miss說明沒有被緩存。如果沒有被緩存,就需要在排查一下沒有被緩存的原因了。

3、看一些已經緩存的靜態文件的加載時間,然後截圖對時間進行一下標註 ;

4、在將用戶域名綁定到本地的hosts 文件,綁定後等於解析到源站上進行訪問,還是使用開發者工具,Ctrl+F5 多刷新幾次,找一下剛剛查看到的文件連接,關注一下時間,標註截圖。然後將兩個標註的截圖都發給客戶,這裏一定會看到源站的訪問時間要比CDN 加速後訪問的時間要長的。就可以驗證了。

域名使用CDN之後訪問提示504 Gateway Time-out

問題場景:使用CDN加速之後,訪問域名出現504 Gateway Time-out,如下圖
這裏寫圖片描述
問題原因:出現此類情況一般都是由於源站異常導致,由於CDN回源取數據的時候,如果源站在30s內沒有響應,CDN就會拋出“504 Gateway Time-out”的報錯;

1、如果使用的是阿里雲服務器ECS,遇到此類情況時,建議先登陸管理控制檯在如下圖位置處查看服務器的CPU以及帶寬使用是否有異常,參考CPU異常和帶寬跑滿的不同情況進行分別進行檢查;
2、直接修改本地電腦的host文件,將域名直接指向源服務器IP,測試訪問是否正常,修改方法請點擊查看,如果同樣無法訪問,需立刻檢查源服務器或者程序是否存在異常。
參考:
https://help.aliyun.com/knowledge_list/40208.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章