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指令來看一下域名的解析
如果域名解析到帶有kunlun字樣的域名則說明已經解析到了cdn了dig www.youdomainname.com
阿裡雲 CDN 問題排查域名使用CDN之後通路提示504 Gateway Time-out - 看一下源站是否存在問題,直接修改本地hosts檔案,通路源站看是否有問題。
如下圖,寫ip位址,空格自己的域名,那麼當您清除了浏覽器的緩存記錄,并重新開啟浏覽器進行通路時,您将直接從1.1.1.1這個源站IP擷取資料,不再經過CDN,vim /etc/hosts
阿裡雲 CDN 問題排查域名使用CDN之後通路提示504 Gateway Time-out
CDN通路異常的時候如何排查
- ping域名 ,檢視解析出的IP是否是阿裡雲CDN的節點,參考CDN節點IP查詢方法來檢視IP是不是阿裡雲CDN的節點。
- 如果不是阿裡雲CDN節點的IP,那麼說明被劫持的,建議向用戶端通路所在網絡營運商進行投訴。
- 如果是阿裡雲CDN的節點IP,且能ping通域名,那麼本地域名綁定host測試,看下是CDN問題還是源站問題。具體操作步驟請參考CDN通路異常。
- 如果檢查下來源站不能通路,那麼檢查源站。如果源站可以通路,通過CDN無法通路,那麼把ping域名截圖和通路按照這個連結http://tool.alikunlun.com/doc.html 的截圖保留下來一并送出工單聯系我們。
- 如果是阿裡雲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