電信級服務(wù)器軟件架構(gòu)
原創(chuàng)電信級服務(wù)器是電信運(yùn)營商使用的網(wǎng)絡(luò)設(shè)備,是對性能、可用性和安全性要求最高的商用服務(wù)器,以交換機(jī)、路由器等核心網(wǎng)絡(luò)設(shè)備為代表,支撐著計算機(jī)網(wǎng)絡(luò)的發(fā)展,并隨著電信業(yè)務(wù)的不斷豐富,電信級服務(wù)器設(shè)備的類型也飛速地發(fā)展。
服務(wù)器與個人電腦一樣都是計算機(jī),以處理器、硬盤、內(nèi)存、系統(tǒng)總線等組成硬件平臺,在硬件平臺上運(yùn)行軟件程序。不同之處在于是服務(wù)器是針對具體的網(wǎng)絡(luò)應(yīng)用特別制定的,與微機(jī)在處理能力、穩(wěn)定性、可靠性、安全性、可擴(kuò)展性、可管理性等方面存在差異很大。隨著信息技術(shù)的進(jìn)步,網(wǎng)絡(luò)的作用越來越明顯,服務(wù)器的功能也越來越復(fù)雜。而電信級服務(wù)器著主要體現(xiàn)在三個關(guān)鍵特征上
·高性能 電信級服務(wù)器是為大量的終端用戶服務(wù)的設(shè)備,在業(yè)務(wù)高峰期要處理海量的數(shù)據(jù)業(yè)務(wù)。例如春節(jié)前,國人通常會通過手機(jī)互發(fā)短信問候,對于1個千萬人口的國內(nèi)大型城市,按2010年全國人均發(fā)送31條問候短信計算,該市短信系統(tǒng)一共發(fā)送3億1千萬短信,即使系統(tǒng)吞吐量峰值是5000條/秒,也需要連續(xù)工作17小時多才能發(fā)完。而10多個小時才能將短信發(fā)給親友,應(yīng)該是不會有人滿意的,對于北京、上海等2~3千萬的特大型城市,系統(tǒng)吞吐量還必須成倍增加。
·高可用性 電信級服務(wù)器的要求是 7 x 24 小時不間斷服務(wù),滿足99.999%的高可用性,這意味著一年內(nèi)的計劃外停機(jī)時間只有5分鐘。任何時候,一次服務(wù)中斷對于電信業(yè)務(wù)來說都是非常嚴(yán)重的事故,以電話業(yè)務(wù)為例,如果服務(wù)器意外中斷,大量正在撥號的用戶將不能撥通好嗎,而大量正在通話的用戶的電話會突然中斷,這將造成無法估量的損失。
·高安全性 電信級服務(wù)器承擔(dān)著互聯(lián)網(wǎng)業(yè)務(wù)數(shù)據(jù)傳輸?shù)闹匾δ?。互?lián)網(wǎng)浪潮發(fā)展到今天,已經(jīng)深入了人們的日常生活,保護(hù)個人隱私,抵御惡意攻擊是電信級服務(wù)器的基本要求。以網(wǎng)上購物為例,2011年,淘寶平均每分鐘交易4.8萬件商品,單日交易額最高達(dá)43.8億元,如果服務(wù)器不能保證網(wǎng)上購物業(yè)務(wù)的安全性,后果是無法想象的。
辯證唯物主義哲學(xué)的三大規(guī)律之一,量變質(zhì)變規(guī)律告訴我們,事物的量變會引起質(zhì)變。建造承重300噸的大橋和建造承重30噸的大橋是不一樣的;開發(fā)可以運(yùn)行1個小時的程序與開發(fā)可以連續(xù)運(yùn)行7 x 24小時的程序是不同的;開發(fā)接入10個客戶端的服務(wù)器,和開發(fā)接入1萬個客戶端的服務(wù)器也是不同的。本文將從3個方面介紹電信級服務(wù)器軟件的設(shè)計。
軟件流程設(shè)計
由于電信業(yè)務(wù)的時間復(fù)雜度是指數(shù)級的,要擴(kuò)大數(shù)據(jù)規(guī)模,提高硬件速度是沒有效果的,必須采用更優(yōu)的計算模式。我們從數(shù)據(jù)流程的角度,將計算模式分為兩種,同步模式和異步模式。
同步模式下,數(shù)據(jù)是服務(wù)器一個一個地處理的,前一個數(shù)據(jù)處理完再處理下一個數(shù)據(jù),對于多核和多CPU的平臺,可以同時并發(fā)處理n個數(shù)據(jù)(n是CPU數(shù)量)。假設(shè)A節(jié)點(diǎn)通過B服務(wù)器與C節(jié)點(diǎn)交互,同步模式的處理方式如下
同步模式的程序的邏輯簡單,軟件代碼量相對較少,異常處理考慮相對容易。但是對于電信級服務(wù)器來說,同步模式的性能是不夠的
異步模式下,服務(wù)器可以連續(xù)地處理數(shù)據(jù),通過內(nèi)部緩存數(shù)據(jù)處理的中間結(jié)果,記錄每個數(shù)據(jù)的處理狀態(tài),直到處理完成。
根據(jù)我在電信行業(yè)十年多的經(jīng)驗(yàn),異步模式下系統(tǒng)的吞吐量比同步模式高出一個數(shù)量級。但是異步模式程序就比同步模式復(fù)雜多了,需要用到內(nèi)存表、狀態(tài)機(jī)、工作流等技術(shù)。而電信級服務(wù)器軟件一般都是采用異步模式實(shí)現(xiàn)。
硬件平臺
主流的電信級服務(wù)器的硬件平臺,經(jīng)歷了由塔式服務(wù)器到機(jī)架服務(wù)器,再到刀片服務(wù)器的發(fā)展歷程。
塔式服務(wù)器
外形及結(jié)構(gòu)都與普通的PC機(jī)差不多,主板擴(kuò)展性較強(qiáng),機(jī)箱內(nèi)部往往會預(yù)留很多空間,以便進(jìn)行硬盤,電源等的冗余擴(kuò)展。缺點(diǎn)是體積較大,占用空間多,不方便管理。
機(jī)架服務(wù)器
外觀按照統(tǒng)一標(biāo)準(zhǔn)來設(shè)計,配合機(jī)柜統(tǒng)一使用。相比塔式服務(wù)器,占用空間小,便于統(tǒng)一管理,但由于內(nèi)部空間限制,擴(kuò)充性較受限制。
刀片服務(wù)器
是一種低成本服務(wù)器平臺,是專門為特殊應(yīng)用行業(yè)和高密度計算機(jī)環(huán)境設(shè)計的,其主要結(jié)構(gòu)為一大型主體機(jī)箱,內(nèi)部可插上許多“刀片”,其中每一塊刀片實(shí)際上就是一塊系統(tǒng)母板,類似于一個個獨(dú)立的服務(wù)器,它們可以通過本地硬盤啟動自己的操作系統(tǒng)。刀片服務(wù)器比機(jī)架式服務(wù)器更節(jié)省空間,且擴(kuò)展性較強(qiáng)。
目前電信級服務(wù)器的主流硬件平臺是刀片式服務(wù)器組成的集群,并以負(fù)載均衡、四層交換等技術(shù)為基礎(chǔ)實(shí)現(xiàn)高性能的業(yè)務(wù)數(shù)據(jù)的處理。
異常處理
要滿足5個9的高可用性要求,很多對于普通服務(wù)器來說出現(xiàn)幾率很小而可以忽略不計的異常情況,對電信級服務(wù)器來說則是必須應(yīng)對的風(fēng)險。
·存儲空間不足
由于電信級服務(wù)器需要不間斷處理海量數(shù)據(jù),即使配置海量數(shù)據(jù)存儲設(shè)備,有定期的數(shù)據(jù)清理機(jī)制,也必須要考慮空間滿的情況,要慎重分析業(yè)務(wù)峰值的壓力,確保在空間不足的時候業(yè)務(wù)不會中斷。而相應(yīng)的常采用的技術(shù)方案包括備用存儲、告警恢復(fù)等等。
·數(shù)據(jù)庫異常
即便是oracle和sybase等業(yè)內(nèi)成熟的商用數(shù)據(jù)庫,支撐電信級服務(wù)器時也不能完全避免掛起、死鎖等問題。以我在電信行業(yè)工作十年的經(jīng)歷,接近1/5的現(xiàn)網(wǎng)問題都和數(shù)據(jù)庫異常有關(guān)。所以電信級服務(wù)器必須要有在數(shù)據(jù)庫異常時確保業(yè)務(wù)不中斷的機(jī)制。
·硬件設(shè)備異常
電信級服務(wù)器最常出現(xiàn)問題的設(shè)備是磁盤/磁陣,我在工作中經(jīng)常碰到磁陣掛起導(dǎo)致的現(xiàn)網(wǎng)問題。所以設(shè)計電信級服務(wù)器的時候,必須要有應(yīng)急機(jī)制,避免因?yàn)橛布收蠈?dǎo)致業(yè)務(wù)長時間中斷。
本文介紹了電信級服務(wù)器的三個重要特征:高性能、高可用性和高安全性,并從流程設(shè)計、硬件平臺和異常處理三個方面簡單介紹了電信級服務(wù)器的軟件設(shè)計。當(dāng)然,電信級服務(wù)器軟件的架構(gòu)需要考慮的方面遠(yuǎn)不只這些,要成功開發(fā)的電信級服務(wù)器軟件,除了扎實(shí)地通信領(lǐng)域技術(shù)基礎(chǔ),長期的軟件開發(fā)經(jīng)驗(yàn)積累,還需要特別能戰(zhàn)斗的團(tuán)隊組織。
作者簡歷
|
責(zé)任編輯:張偉
來源:
51CTO ![]() ![]() 相關(guān)推薦 ![]() ![]() ![]() ![]() ![]() 51CTO技術(shù)棧公眾號 ![]()
業(yè)務(wù)
速覽 在線客服 |