天翼云CDN回源重試及探測機制是怎樣的
更新時間 2024-10-12 10:44:39
最近更新時間: 2024-10-12 10:44:39
分享文章
本文介紹天翼云CDN回源重試及探測機制。
問題概述
本文介紹天翼云CDN回源重試和探測機制。
回源重試機制
回源重試觸發條件
以下回源失敗場景均可能觸發回源重試:
- 回源TCP連接失敗。
- TCP連接成功但源站響應5XX、404狀態碼。
- 回源域名DNS解析失敗。
CDN默認在回源TCP連接失敗,以及回源域名DNS解析失敗時進行重試;如需在回源TCP連接成功但源站響應5XX、404狀態碼時進行重試,需要提交工單給天翼云客服,并說明具體重試狀態碼,以及最大重試次數,由CDN技術人員進行人工配置。
回源重試粒度
天翼云CDN支持兩種粒度的回源重試:以源站配置中的每個記錄為粒度和以具體IP為粒度。如配置了回源重試,CDN默認以每個源站記錄為重試粒度。
下面以具體示例來進行說明:
假設有兩個源站,源站1為域名:test.daliqc.cn,源站2為IP:1.1.1.1,其中域名test.daliqc.cn解析到2個IP,分別為2.2.2.2和3.3.3.3。
- 如以源站記錄為回源重試粒度,則某個指向源站1的2.2.2.2請求失敗時,會重試下一個源站記錄(可為域名也可以為IP),即本例中的源站2:1.1.1.1,而不是3.3.3.3。如本次重試失敗,同時未達到最大重試次數上限,則會再次重試源站1,具體IP取決于2.2.2.2和3.3.3.3之間的輪詢機制。
- 如以具體IP為粒度,則某個指向源站1中的IP:2.2.2.2請求失敗時,會重試同個源站的下一個IP,即3.3.3.3,而不是1.1.1.1。如本次重試失敗,同時未達到最大重試次數上限,則會再次重試下一個源,即這里的1.1.1.1。
回源探測機制
CDN不會主動進行回源探測。如回到某個源站請求失敗時,CDN不會將失敗結果直接返回給客戶端,而是會進行重試,通過重試來規避因源站不穩定帶來的訪問體驗受損問題。如果某個源站在一定周期內失敗次數超過一定閾值(閾值可配),則CDN會將該源站放入不可用列表,并持續一段時間(時長可配),直到該時長過后才將對應源站記錄重新放回可用列表。即CDN可基于每個源站對請求的響應來判斷源站是否可用。
對源站進行不可用判定時,與回源重試粒度相同,也分為兩種,一種是基于源站記錄來判斷是否可用,即無論某個源站是域名還是IP,如果在一定周期內返回失敗次數超過一定閾值,即認為該源站不可用;另外一種是基于具體IP,即如果某個源站是域名,只有該域名中所有IP不可用,才認為該源站不可用。CDN默認為基于源站記錄來判斷是否可用。