偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

獨(dú)特低運(yùn)營成本海量日志處理系統(tǒng)架構(gòu)

原創(chuàng)
開發(fā) 架構(gòu) 開發(fā)工具
由51CTO舉辦的WOT2016互聯(lián)網(wǎng)運(yùn)維與開發(fā)者峰會上,來自又拍云CTO黃慧攀做了以 “海量日志處理系統(tǒng)架構(gòu)”為主題的演講。本文章是把本次分享干貨亮點(diǎn)的整理成文字形式,呈獻(xiàn)廣大的用戶。

本文是WOT2016互聯(lián)網(wǎng)運(yùn)維與開發(fā)者大會的現(xiàn)場干貨,  新一屆主題為WOT2016企業(yè)安全技術(shù)峰會將在2016年6月24日-25日于北京珠三角JW萬豪酒店隆重召開!

黃慧攀表示,又拍云主要做CDN,因此網(wǎng)內(nèi)會有大量日志產(chǎn)出,量級超乎想象。通常在處理類似這樣量級的大數(shù)據(jù)時會用到Hadoop、Spark等流行的解決方案,但又拍云卻沒有選擇這些流行的算法。下面我們就走近又拍云來體會這套執(zhí)行成本高,但運(yùn)營成本較低的獨(dú)特海量日志處理系統(tǒng)架構(gòu)。

又拍云業(yè)務(wù)架構(gòu)概述

業(yè)務(wù)架構(gòu)

黃慧攀表示,又拍云業(yè)務(wù)架構(gòu)非常簡單原始,把NGS日志全部打出來,CDN邊緣有100多個節(jié)點(diǎn),每個節(jié)點(diǎn)里面有幾十臺服務(wù)器,乘起來就是幾千臺服務(wù)器的日志。每隔每五分鐘把邊緣每一臺服務(wù)器的日志給收集到原始日志服務(wù)器,然后再從原始日志服務(wù)器里面供給Work,Work里可多可少,大部分是橫向擴(kuò)展。然后分析日志,最終產(chǎn)生統(tǒng)計(jì)數(shù)據(jù),切割出來一些為客戶提供下載日志。在NGS上一個CDN節(jié)點(diǎn)是給所有的用戶提供訪問的,不管是大客戶還是小客戶,很有可能你們都在用同一臺NGS,也就是說它的日志里面會混雜著很多個域名。那么日志處理系統(tǒng)就會面臨如何把這些日志按照域名給切分開來?在切分開來數(shù)據(jù)的基礎(chǔ)上,如何做必要的數(shù)據(jù)統(tǒng)計(jì)及分析?

原始日志的收集和存儲

黃慧攀表示,又拍云原始數(shù)據(jù)的收集經(jīng)歷了三個階段,分別是在2011~2014年、2015年、2016年。

2011~2014年V1

2011~2014年第一階段。在中心搭一臺FTPserver,其他邊緣服務(wù)器直接把日志FTP上傳,之后存起來的一個簡單架構(gòu)。黃慧攀表示,當(dāng)量級小時,這個架構(gòu)很好用,簡單又成熟。但如果一旦數(shù)據(jù)量變大,就會出現(xiàn)瓶頸。又拍云在2014年做云存儲,CDN賣的不多,訪問量不太大,數(shù)據(jù)量也少,所以這個架構(gòu)可以應(yīng)對。

2015年V1顯露不足

隨著這個業(yè)務(wù)擴(kuò)展,又拍云在市場做了很多的工作,接入很多的大客戶,導(dǎo)致日志量翻超過10倍之多。那么之前2011年設(shè)計(jì)的系統(tǒng)只考慮到考慮到10倍的處理能力,所以 FTPserver弊端瓶頸就都顯露出來。如在FTPserver沒有辦法接收這么多的客戶端上傳,邊緣節(jié)點(diǎn)太多,連接到FTPserver上,F(xiàn)TP的進(jìn)程幾千個,服務(wù)器很快會被卡死,導(dǎo)致數(shù)據(jù)不能上傳。如上圖,下面Raid 0非常不安全,1塊磁盤損壞,全部數(shù)據(jù)丟失。雖然邊緣日志緩存7天,邊緣重新再上報,及時修復(fù)沒有影響業(yè)務(wù)。但會導(dǎo)致人有點(diǎn)手忙腳亂也不是很好。

2016年V2

2016年初第二個階段,對原有系統(tǒng)進(jìn)行改造。把FTPserver,換成了Nginx Server,Nginx Server文件上傳基于DAV Module并做二次開發(fā)就可以接受文件的請求。 因原生模塊只支持配置一個路徑,也就是日志只能固定寫入一塊磁盤??煞?wù)器不可能用一塊盤能存得下,每天有幾百G、幾個T的數(shù)據(jù)需要存儲,磁盤定會爆掉,當(dāng)時并沒有這么大的磁盤。所以對DAV Module做二次開發(fā),如根據(jù)日期,存儲機(jī)器一塊盤是6T能存下一天的日志,第一天用1號盤,第二天用2號盤的模式。

2016年V2.1

第二個版本上線之后,發(fā)現(xiàn)了磁盤的寫入成了瓶頸,磁盤不夠快,因?yàn)樗荢ATA磁盤,寫不進(jìn)去這么多數(shù)據(jù)。這時第三個版(2.1版本),目前正在實(shí)用的版本誕生。對DAV Module進(jìn)行更改,從原來的根據(jù)日期改成用文件名。另外在這個基礎(chǔ)上做增強(qiáng),原始日志在上傳上來的過程中,同時拷貝到旁邊一塊盤一份,這樣就可以避免單盤故障而導(dǎo)致服務(wù)不可用,也不會有數(shù)據(jù)丟失的問題,盡量的保障業(yè)務(wù)可以24小時在運(yùn)行,不需要停下來。這個方案比較完美的解決原始數(shù)據(jù)的收集問題。

對大量數(shù)據(jù)進(jìn)行切割-排序-合并

切割-排序-合并

切割。用C寫的一個日志切割程序,把每5分鐘每臺服務(wù)器的日志按域名切割成多個小文件,臨時的存在SSD磁盤上面去。切割完成之后,還會有線程檢查前一個小時是不是切割已經(jīng)完成。

排序。如想要讓排序變得簡單,就要在前期做日志收集規(guī)劃時做好基礎(chǔ)。如每五分鐘會有一個文件要上傳上來,可把文件名做加工(把時日期時間點(diǎn)、哪五分鐘的數(shù)據(jù))。如一個小時有一千個小文件,在這一千個里面,一定有其中一百個是某一個五分鐘的,就直接拿這一百個做排序。做排序時不用把這些數(shù)據(jù)減壓出來,放到其他地方臨時存儲來做排序。是把這一百個文件打開,到每個文件在里面讀,讀第一秒,再問另外幾個文件有沒有,沒有就跳下一秒,這樣一個一個順序下來,就按照時間序來讀日志,合并到一個具體文件輸出,這樣的模式是最高效的。因?yàn)樵谔幚磉^程中,就不用把一個具體的文件減壓成文本。如把要減壓,拿什么機(jī)器能夠把原始日志給存下來是個問題,因?yàn)樘罅恕?/p>

合并。待切割排序完成,就把每小時把12*N個小文件按順序合并成一個1小時的日志文件供客戶下載。

對大量數(shù)據(jù)進(jìn)行統(tǒng)計(jì)分析

凌晨零點(diǎn)最后一個文件合并出來會啟動統(tǒng)計(jì)分析的業(yè)務(wù)流程,就可以綜合的拿到一些比較有用的指標(biāo),如熱門IP分布、URL分布、客戶端、來源、狀態(tài)碼計(jì)數(shù)等數(shù)據(jù)。

系統(tǒng)架構(gòu)演變過程中踩過的坑

黃慧攀表示,在系統(tǒng)架構(gòu)演變過程中遇到了一些坑,把這些分享出來,希望大家不要踩。

第一:SSD inode 數(shù)不足,每5分鐘切割出來的小文件非常多,要以最小block大小格式化磁盤。

第二:跨網(wǎng)絡(luò)上傳很慢,需要多線路支持;小運(yùn)營商會改寫內(nèi)容,走HTTPS。

第三:日志存儲磁盤SATA容易壞,要分別寫入2個磁盤(SSD 也會壞)。

第四:服務(wù)器也不穩(wěn)定,要雙集群模式處理,保障業(yè)務(wù)不中斷。

存儲服務(wù)器和處理服務(wù)器的監(jiān)控圖

演講最后,黃慧攀為大家展示了存儲服務(wù)器和處理服務(wù)器的監(jiān)控圖。他表示,當(dāng)下這個海量日志處理系統(tǒng)架構(gòu)基本是非常穩(wěn)定,集群狀態(tài)很正常健康,冗余度也比較高。

演講視頻:http://edu.51cto.com/lesson/id-100758.html

【講師簡介】

[[167023]]
黃慧攀,
又拍云CTO。他是 aLiLua Web 開發(fā)框架的作者,有 14 年互聯(lián)網(wǎng)從業(yè)經(jīng)驗(yàn),技術(shù)經(jīng)驗(yàn)涵蓋范圍比較廣,早期以前端 Web 開發(fā)為主,后期逐步轉(zhuǎn)到底層研發(fā)方向。QCon 、ArchSummit、中華架構(gòu)師大會講師,在高性能網(wǎng)絡(luò)服務(wù)、分布式存儲系統(tǒng)等方面有較深入的研究。

責(zé)任編輯:王雪燕 來源: 51CTO
相關(guān)推薦

2016-12-13 11:56:09

大數(shù)據(jù)Hadoop計(jì)算框架

2013-02-21 16:27:07

開源開源流計(jì)算

2015-10-08 10:35:47

架構(gòu)師開源實(shí)時流處理

2013-08-30 09:46:01

2011-04-28 11:01:40

Android消息處理LooperHandler

2011-05-31 10:02:02

2012-06-26 10:03:06

海量數(shù)據(jù)處理

2012-10-08 09:45:22

數(shù)據(jù)密集型處理系統(tǒng)

2020-06-30 14:50:59

微服務(wù)日志架構(gòu)

2013-09-02 12:46:55

Quip企業(yè)級移動

2023-01-13 08:35:29

告警降噪系統(tǒng)

2023-10-26 07:36:02

分布式架構(gòu)

2022-06-28 13:41:43

京東數(shù)據(jù)處理

2023-03-27 21:21:05

短視頻自動化實(shí)踐

2011-05-13 17:46:14

2016-11-01 09:15:43

大數(shù)據(jù)處理系統(tǒng)

2011-05-11 12:19:41

應(yīng)用交付服務(wù)器

2016-11-07 14:59:45

大數(shù)據(jù)數(shù)據(jù)處理系統(tǒng)

2012-09-20 11:21:34

公有云虛擬云架構(gòu)虛擬化架構(gòu)

2016-09-07 15:20:14

數(shù)據(jù)中心運(yùn)營成本
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號