别让CDN的回源把你的服务器拖垮,采用正确的回源策略
我們有一臺服務器提供的服務主要是以動態頁面為主,靜態頁面都是固定的內容平時更新的很少,最近這臺服務器的應用升級到了新版本訪問量增大了不少,隨之的問題就來了,最近每天一到9點負載就超過警戒值,然后負載持續升高,load的值最高到100左右,這種情況一直會持續到12點,一過12點負載馬上降低到5以下。
??
?? 通過分析網絡連接發現并沒有攻擊的跡象,基本都是正常的訪問。后來開始考慮是否是硬件性能造成的,查看 cpu 內存和磁盤io的問題,觀察了一段時間后發現這幾個設備的壓力確實增大了,但卻沒到不能承受的地步。后來我開始對nginx的訪問日志開始分析,集中分析9~12點的訪問情況。
???
?? 經過分析發現有10多個ip的請求量在9點突然增加,到11點半以后請求數就將的很低了。而且他們的請求基本都是靜態請求。我開始的時候懷疑是攻擊但是又一想,會不會這幾個ip是我們的CDN提供商的地址,于是馬上聯系CDN的技術支持,一查果然這幾個ip都是他們分布在全國各地的服務器的ip,仔細詢問后才知道。
??
? 他們現在服務器的回源機制是分散回源,也就是說全國各地的服務器每隔一段時間后會自己去我們的服務器上檢查更新。可能最近有過改動所以這些服務器都在9點到10點之間一起去那臺服務器上檢查更新。結果就是那些ip訪問量激增... 我又詢問了下他們回源的間隔時間,工程師跟我說現在是定在3小時。我當時一愣 每隔三小時全國幾十臺服務器都去我們那臺服務器上查一遍,負載能不高么...
??
? 立即讓他們修改回源策略,因為我們的靜態內容很久才會更新一次,而且每次更新都是手動更新,平時基本用不著更新,所以也用不著cdn的服務器總是去檢查。
??
? 開始對回源的時間和回源方式與CDN的工程師討論,最后的解決方法是,在所有CDN的服務器里找出三臺來做回源點,其他的機器都去這三臺服務器上去檢查更新,
而這三臺服務器每隔三天會到我們的服務器上檢查更新。確定了之后,就讓他們的工程師去改策略了。不一會兒他們說改好了,但要等第二天才能生效,讓我等到時候看效果。
??
? 到了第二天9點,果然Nagios 沒有報警,系統load值正常直到每天中午 訪問最高的時候才有一點高,看來新改的策略生效了。從日志上看 CDN的那幾個地址的訪問量也不那么高了。
??
? CDN本來是給我們的網站加速的,但是有時會因為不合適的回源策略給服務器帶來負擔,只有選擇正確的策略才能給自己的網站帶來更高的訪問效率!
希望這篇文章對大家有所幫助? ^_^
https://blog.csdn.net/longxingzhiwen/article/details/55520639
?
總結
以上是生活随笔為你收集整理的别让CDN的回源把你的服务器拖垮,采用正确的回源策略的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 摸鱼还是学习?来看看这些网站吧!
- 下一篇: 美团门店商品批量上传