S4是什么鬼?不是F4才風靡全國嗎?
殊不知,這S4在IT圈早已經是炙手可熱的存在,受歡迎程度絕不亞于當年的F4。好吧,其實不能這么比。
S4的出現還要歸功于互聯網的快速發展,從最初的web1.0時代,到后來的web2.0時代,再到ego net,可以說數據量在呈指數級不斷上升。因為數據量不斷提升,導致服務器引擎壓力不斷增大,如何解決服務請求峰值過高,負載過重問題呢?
首先我們需要了解一下什么是S4。
S4(簡單可擴展流系統的首字母簡稱:Simple Scalable Streaming System)是一個受Map-Reduce模式啟發的分布式流處理引擎。
S4
從S4目前的應用情況來看,谷歌、必應、雅虎都有應用,他們典型的做法是在用戶查詢響應中提供結構化的Web結果的同時插入基于流量的點擊付費模式的文本廣告。
從技術的角度講,S4與Storm等流計算框架一樣,都是分布式流數據實時與持續計算的基礎。而分布式流數據實時與持續計算除了S4之外,還需要MapReduce、Dryad等全量/增量計算平臺、CEP以及EDA模型、還有Pregel等圖計算模型。
在大數據環境下,企業生產環境的主要需求是圖最小的代價通過增加更多的機器來提高推土量的能力和在存在系統故障情況下,能夠實現自動災備同時不影響持續提供服務的能力。通過負載分流,我們可以實現系統處理速度趕上事件流量,或者通過降級,實現關鍵業務順利運轉。這種降級的方式也在微信紅包高峰期曾被采用。
實際上,S4的存在就是為大數據而服務。而無論是分布式流計算平臺,還是分布式架構都隨著大數據的快速成長,隨著數據請求和數據量的增長,得到了越來越多的應用。