CDN在秒殺系統中的作用

2021-08-11 06:39:13 字數 1603 閱讀 9286

自己總結不好,這裡把個人覺得比較好的方案幹活分享一下:

秒殺系統架構分析與實戰

由於博主水平欠缺,看資料時特別容易看到不懂得地方就去查,如此好比深度優先一樣不知不覺開啟了n個標籤頁。。。所以今天只搞懂了一小部分內容,趕緊記錄下來。

設計秒殺系統時有個關鍵問題需要考慮:

對於秒殺系統瞬時會有大量使用者湧入,所以在搶購一開始會有很高的瞬間峰值。高峰值流量是壓垮系統很重要的原因,所以如何把瞬間的高流量變成一段時間平穩的流量也是設計秒殺系統很重要的思路。實現削峰的常用的方法有利用快取和訊息中介軟體等技術。

也即「削峰」。

1、基於soa的架構設計,彈性擴充套件瓶頸模組伺服器資源;

2、接入層以及各服務模組極大的用好cache,增加qps,從而加大整個集群的吞吐量;

3、模組間使用訊息佇列通訊,進行模組非同步解耦,訪問量上來後,使用時間成本換取業務能夠正常服務;

4、各服務模組對自身負責的同時,要做好後端依賴有效呼叫的判斷,做到向上游模組所做的呼叫都是必要的呼叫,無冗餘或無效的呼叫;

5、劃分好動靜資源,靜態資源使用cdn進行服務分發。

同樣,水平有限,感覺不太懂。不過針對cdn樓主又做了調研:

cdn全稱「content delivery network或content distribute network」,即內容分發網路。

基本思路:

盡可能避開網際網路上有可能影響資料傳輸速度和穩定性的瓶頸和環節,使內容傳輸的更快、更穩定。通過在網路各處放置節點伺服器所構成的在現有的網際網路基礎之上的一層智慧型虛擬網路,cdn系統能夠實時地根據網路流量和各節點的連線、負載狀況以及到使用者的距離和響應時間等綜合資訊將使用者的請求重新導向離使用者最近的服務節點上。

目的:解決因分布、頻寬、伺服器效能帶來的訪問延遲問題,適用於站點加速、點播、直播等場景。使使用者可就近取得所需內容,解決 internet網路擁擠的狀況,提高使用者訪問**的響應速度和成功率。

控制時延無疑是現代資訊科技的重要指標,cdn的意圖就是盡可能的減少資源在**、傳輸、鏈路抖動等情況下順利保障資訊的連貫性。

cdn就是扮演者護航者和加速者的角色,更快準狠的觸發資訊和觸達每乙個使用者,帶來更為極致的使用體驗。

再通俗點說就是在網速一定的前提下,cdn就像網路中快遞員小哥。

上述部分內容**知乎的乙個回答:

最後舉乙個從阿里雲棲社群找到的乙個案例。(比較容易理解,不懂得同學可以稍微查一下(*^▽^*)) 背景

傳統動靜不分離的產品架構,隨著訪問量在增長,效能會成為瓶頸。以乙個常見的web站點為例。www.acar.com是乙個剛建立汽車資訊車友交流**,主站用php搭建,有10gb的素材,部分js檔案。目前購買一台ecs放置所有程式**,並在ecs上安裝mysql資料庫。隨著使用者訪問量的不斷增長,不少使用者反映,訪問**的速度越來越慢,載入慢,**響應慢,同時**技術人員也發現使用者上傳的越來越多,快超過1tb了。在這種情況下,使用者可以通過利用oss和cdn對**進行架構優化,做到**檔案的動靜分離的,提公升使用者訪問體驗,實現成本可控。

**動靜分離架構

該架構優勢十分明顯:

勉強算上是原創部落格,搬運工+自己的愚見。有不當處歡迎指正!

秒殺系統的設計

秒殺場景一般會在電商 舉行一些活動或者節假日在12306 上搶票時遇到。對於電商 中一些稀缺或者 商品,電商 一般會在約定時間點對其進行限量銷售,因為這些商品的特殊性,會吸引大量使用者前來搶購,並且會在約定的時間點同時在秒殺頁面進行搶購。限流 鑑於只有少部分使用者能夠秒殺成功,所以要限制大部分流量,...

秒殺系統的設計

什麼是秒殺 秒殺場景一般會在電商 舉行一些活動或者節假日在12306 上搶票時遇到。對於電商 中一些稀缺或者 商品,電商 一般會在約定時間點對其進行限量銷售,因為這些商品的特殊性,會吸引大量使用者前來搶購,並且會在約定的時間點同時在秒殺頁面進行搶購。秒殺系統場景特點 秒殺時大量使用者會在同一時間同時...

秒殺系統的實現

按照正常的購買流程 查詢商品庫存,庫存大於0時,生成訂單,去庫存。如果出現併發,導致在查詢商品庫存的時候,庫存會一直出現大於0的情況,出現超賣現象。基於mysql的事務和鎖實現方式 如果不開啟事務,第二步即使加鎖,第乙個會話讀庫存結束後,變會釋放鎖,第二個會話仍有機會在去庫存前讀庫存,出現超賣。如果...