我是怎麼讓全國最大的兒童失蹤預警平臺流量掉底的

假如你是一個老司機,一眼看到一個這樣的外網帶寬曲線,你會有什麼反應?html

我擦,流量幾乎掉底了,從一天前開始的,至今仍未恢復,這個服務是掛掉了嗎?緩存

這實際上是近幾個月在微信上異常活躍的CCSER兒童失蹤預警平臺的後臺服務器的流量監控圖
安全

CCSER的發起人張永將,和咱們同樣有一個作中國的互聯網安珀警惕(Amber Alert)的夢想,從CCSER發起時咱們就一直在嘗試各類合做。去年末CCSER終於完成了大量前期工做,準備開始發力面向全國用戶作推廣,做爲互聯網老兵,咱們深知要作一個面向海量用戶的大平臺須要面臨巨大的技術挑戰,因而邀請CCSER入駐到「雲+公益」計劃,由咱們提供雲資源和必要的技術支持。服務器

果真,放量沒多久,CCSER提出了新的需求:原來提供的5臺服務器不夠用,並且面向全國的地區覆蓋不夠好,但願能夠提供多幾臺分佈在其全國各個機房的服務器來協助分發。微信

這實際上是很常見的一類問題:用戶須要的是一個牆上的洞,而他覺得本身須要的是一把衝擊鑽。在這個案例中,CCSER須要的是更多的分發數據的能力,而他覺得本身須要的是更多的分發數據的服務器。設計

CCSER的業務場景很特殊,每當有兒童走失案例上報,CCSER就會向走失地點附近的一大片區域進行APP和微信的消息推送,像這樣
3d

隨後短期內該片地區的大量的用戶會點擊這個消息,給服務器帶來很大的流量衝擊。htm

在大多數時間裏面,服務器又沒有什麼壓力。blog

所以若是咱們面對服務器的峯值流量來作系統選型的話,系統就不得不設計的很是高規格,同時使用率一定很是低。資源

還好在雲時代,咱們不須要去買本身的「衝擊鑽」,分發能力早就經過COS、優圖、CDN這樣的產品向公衆提供服務了,因此問題變的很簡單了:如何啓用CDN來提供透明的動靜態數據的加速服務。

因此咱們婉拒了CCSER增長服務器的需求,轉而協助CCSER進行CDN分發加速配置。

同時也協助CCSER配置緩存過時策略,確保動態數據透傳,靜態數據有效緩存,而且打開了「中間源」作二級的緩存。

通過CDN的兩級分發緩衝以後,CCSER服務器的壓力急劇下降,流量監控出現了文章開始處的掉底曲線。之後須要進行大範圍消息投放的時候,不再用畏首畏尾,擔憂服務器會不會撐不住了。

同時服務器的真實IP也被隱藏到了CDN後面,所以安全性也獲得了很大加強。

同時,假如這不是一個免費的公益項目的話,經過CDN來分發還能節省大量的費用。

相關文章
相關標籤/搜索