淺析藍色星際監控平臺軟件中間件技術(shù)
近幾年,安防作為一個(gè)新興的產(chǎn)業(yè)在中國以迅猛的速度發(fā)展,隨著(zhù)各類(lèi)型監控設備的百花齊放和普及應用,作為安防產(chǎn)品功能集中體現的監控平臺軟件逐漸被設備廠(chǎng)商和用戶(hù)所重視。藍色星際作為國內知名安防廠(chǎng)商,多年來(lái)一直致力于系統解決方案的提供,尤其重視BstarCenter網(wǎng)絡(luò )視頻監控平臺軟件的開(kāi)發(fā)和投入。經(jīng)過(guò)多年行業(yè)經(jīng)驗的積累,基于先進(jìn)的軟件開(kāi)發(fā)思想提出了一套切實(shí)可行的技術(shù)方案。筆者親身經(jīng)歷了BstarCenter網(wǎng)絡(luò )視頻監控平臺初期的傳統編碼方式,體會(huì )過(guò)開(kāi)發(fā)效率低、無(wú)法適應客戶(hù)需求變更的痛苦;也享受了針對困難進(jìn)行變革,轉變思路,優(yōu)化開(kāi)發(fā)模式,整合開(kāi)發(fā)資源的歷練?;仡^總結的同時(shí),撰寫(xiě)此文,意在總結藍色星際BstarCenter網(wǎng)絡(luò )視頻監控平臺軟件在發(fā)展過(guò)程中的經(jīng)驗,同時(shí)從安防監控平臺中間件開(kāi)發(fā)的角度解析視頻監控平臺的特點(diǎn)。
中間件+分布式架構的技術(shù)實(shí)現是當今軟件技術(shù)的主流方向。介于操作系統底層硬件和應用程序之前的中間件層可以最大程度地簡(jiǎn)化開(kāi)發(fā)過(guò)程,提高開(kāi)發(fā)效率,是軟件市場(chǎng)細分、分工合作的必然結果。中間件技術(shù)的興起,使得以業(yè)務(wù)為導向,快速構建軟件應用平臺成為可能。
從技術(shù)角度分析,安防監控平臺發(fā)展的戰略重點(diǎn)是將技術(shù)平臺和產(chǎn)品平臺分離,從而降低軟件開(kāi)發(fā)人員的流失風(fēng)險和開(kāi)發(fā)成本,優(yōu)化資源配置。從通俗意義上講,技術(shù)平臺就是安防監控平臺的基礎部件,產(chǎn)品平臺是在技術(shù)平臺上搭建的行業(yè)應用。用戶(hù)需求的迅速響應,應用方案的快捷定位等等這些產(chǎn)品平臺層面涉及的問(wèn)題,除考驗著(zhù)安防廠(chǎng)商對行業(yè)的理解以及公司內部各部門(mén)間的運作模式外,在很大程度上取決于技術(shù)部門(mén)搭建技術(shù)平臺的高度和靈活度。同時(shí),安防是一個(gè)立體性很強的行業(yè),其中涉及了視頻、語(yǔ)音、網(wǎng)絡(luò )、存儲等等多方面的技術(shù),每一個(gè)技術(shù)環(huán)節在任何一個(gè)行業(yè)應用中都可能被深度挖掘或放大,這些是對安防廠(chǎng)商技術(shù)平臺層面最大的考驗。鑒于上述問(wèn)題,綜合開(kāi)發(fā)成本的考慮和大型軟件工程開(kāi)發(fā)模式,安防監控平臺中間件技術(shù)的引入迫在眉睫。BstarCenter網(wǎng)絡(luò )視頻監控平臺在開(kāi)發(fā)過(guò)程中,充分認識到了上述可能遇到的問(wèn)題,針對安防監控平臺應用,對系統作以下分析同時(shí)保證在現有系統中實(shí)現。
分布式面向對象的系統結構特點(diǎn)
針對安防監控軟件的發(fā)展特點(diǎn),分布式和面向對象兩大特點(diǎn)可以大幅提高方案靈活性、擴展性;降低開(kāi)發(fā)過(guò)程消耗的時(shí)間、難度;同時(shí),降低不必要的復雜性,使平臺更易于學(xué)習和使用,降低開(kāi)發(fā)成本。
分布各個(gè)對象間采用RPC的調用方式
由于中間件需要屏蔽分布環(huán)境中異步的操作系統和網(wǎng)絡(luò )協(xié)議,必須能夠提供一種分布環(huán)境下的通訊服務(wù)。RPC(遠程過(guò)程調用協(xié)議)是一種廣泛使用的分布式應用程序處理方法,實(shí)現人員在進(jìn)行對象間通訊以完成某些功能時(shí),就像調用本地實(shí)現的方法一樣,通過(guò)RPC的方式調用目標模塊的接口,目標接口通過(guò)返回值或拋出異常的方式反饋執行結果。BstarCenter使用的RPC調用方法底層支持TCP和UDP協(xié)議,保證實(shí)施的靈活性。除了支持普通同步調用的方式外,還支持異步調用(AMI)、異步分發(fā)(AMD)以及廣播服務(wù)的功能,使平臺的命令控制、報警轉發(fā)、新功能發(fā)布等擁有靈活的應用空間。
抽象出文件讀取模塊、數據庫訪(fǎng)問(wèn)模塊、視頻轉發(fā)模塊、認證模塊、資源訪(fǎng)問(wèn)模塊、設備控制模塊等。
針對安防監控平臺的應用,架構設計已經(jīng)被多次討論,很多同行已經(jīng)對其進(jìn)行過(guò)分析,并形成了比較成熟的方案。各個(gè)主流廠(chǎng)商雖有細微差別,但基本都具備以上幾大模塊,筆者在此就不做詳述(具體如圖1所示)。
▲圖1?模塊劃分結構圖
1.提供在網(wǎng)絡(luò )帶寬、內存使用和CPU開(kāi)銷(xiāo)方面都很高效地實(shí)現和應用
BstarCenter在網(wǎng)絡(luò )底層、內存使用和CPU開(kāi)銷(xiāo)方面進(jìn)行深層次的優(yōu)化,因為隨著(zhù)系統性能的提高和負載的增大,以上三個(gè)環(huán)節將是限制安防監控平臺性能的主要因素。同時(shí),在帶寬占用、內存及CPU的使用上,提供接口可以實(shí)時(shí)地進(jìn)行跟蹤輸出,以便于調試和問(wèn)題定位。
2.針對分布式特點(diǎn)提供靈活的防火墻解決方案
BstarCenter使用的通訊協(xié)議支持雙向連接的建立方式,配合前端設備的支持,可以保證客戶(hù)端與服務(wù)器或設備與服務(wù)器對防火墻的穿透方案。與此同時(shí),BstarCenter對端口的使用可以支持動(dòng)態(tài)、靜態(tài)、區間范圍分配三種方式,做到靈活配合客戶(hù)網(wǎng)絡(luò )環(huán)境防火墻設置。
3.提供一種內建安全性的實(shí)現,以適應不安全的網(wǎng)絡(luò )環(huán)境
隨著(zhù)行業(yè)客戶(hù)要求的提高,重點(diǎn)保密行業(yè)對安防涉足和以公網(wǎng)為媒介的監控要求,數據安全性已經(jīng)成為安防監控平臺下個(gè)階段的重要環(huán)節。BstarCenter提供了針對SSL協(xié)議的支持。
4.系統實(shí)現與平臺無(wú)關(guān)
由于客戶(hù)要求的多樣化,以及第三方設備廠(chǎng)商技術(shù)能力的差異性,跨平臺的系統對其進(jìn)行有效的保證。多平臺的支持可以在以下幾個(gè)方面獲得較高收益:SDK接入便捷性、WEB形式應用軟件的迅速發(fā)布、針對不同行業(yè)方案實(shí)施的保證、針對客戶(hù)特殊要求而進(jìn)行的平臺整合等。
5.提供升級服務(wù)模塊
針對安防行業(yè)用戶(hù)需求變化快、設備更新快的特點(diǎn),提供升級模塊功能,保證升級包的檢測和自動(dòng)化執行。
為了保證BstarCenter網(wǎng)絡(luò )視頻監控平臺技術(shù)的先進(jìn)性,及時(shí)更新使用最新的底層技術(shù)(比如select模型到epoll/IOCP模型的轉變),我們也選擇性地使用了第三方底層架構中間件,并根據監控行業(yè)的特點(diǎn)進(jìn)行定制和刪減。在其上層完善出BstarCenter監控平臺中間件基礎模塊。
依靠上述技術(shù)封裝的Bstar-Center監控平臺中間件模塊,可以方便、快捷的進(jìn)行上層應用開(kāi)發(fā)。接下來(lái),筆者將以門(mén)禁中間件模塊為例,簡(jiǎn)要描述以藍色星際BstarCenter監控平臺中間件為基礎進(jìn)行二次開(kāi)發(fā)的過(guò)程。
門(mén)禁中間件模塊由三個(gè)部分組成,分別為設備控制模塊、權限控制模塊、信息回調模塊。從門(mén)禁工作流程的角度分析,二次開(kāi)發(fā)首要任務(wù)是對門(mén)禁設備、門(mén)禁用戶(hù)、IC卡、指紋信息進(jìn)行封裝,形成一套用戶(hù)定制的增、刪、改、查流程,并完成發(fā)卡或指紋授予的工作(即用戶(hù)與IC卡、指紋綁定)。以上數據中,只有卡號和門(mén)禁地址作為設備控制模塊和權限控制模塊的接口參數。接下來(lái),通過(guò)權限控制模塊提供的接口函數,完成整個(gè)門(mén)禁的授權流程和工作模式配置流程。通過(guò)設備控制模塊和權限控制模塊的接口,應用開(kāi)發(fā)人員已經(jīng)完成了門(mén)禁的基本工作流。最后,針對用戶(hù)的要求,結合自己平臺的視頻特點(diǎn),通過(guò)信息回調模塊,捕捉開(kāi)門(mén)事件、刷卡事件、報警事件等,和平臺其他功能相結合,達到二次開(kāi)發(fā)的目的。整個(gè)開(kāi)發(fā)過(guò)程中,應用功能開(kāi)發(fā)人員不需要關(guān)注門(mén)禁設備的具體型號和接入方式。唯一需要關(guān)注的是,客戶(hù)針對門(mén)禁這一傳統安防產(chǎn)品形態(tài),在安防監控平臺上所提出的應用要求。整個(gè)開(kāi)發(fā)過(guò)程大規模降低了技術(shù)平臺對技術(shù)人員的依賴(lài)性,將開(kāi)發(fā)過(guò)程模塊化、流水線(xiàn)化,是今后整個(gè)安防監控平臺軟件的發(fā)展方向(如圖2所示)。
▲圖2?門(mén)禁中間件模塊組成圖
矗立于中國軟件行業(yè)大環(huán)境中的監控平臺軟件,必會(huì )遵循軟件行業(yè)發(fā)展的規律,只有深入挖掘用戶(hù)需求,準確找到行業(yè)定位,并適時(shí)推出解決問(wèn)題的具體方案,滿(mǎn)足用戶(hù)個(gè)性化需求,方能得到青睞。安防監控平臺軟件的中間件技術(shù)的引入,正是提高平臺廠(chǎng)商核心競爭力的主要手段。同時(shí),監控平臺中間件技術(shù)也蘊藏著(zhù)巨大的經(jīng)濟潛力和利潤空間。身為安防領(lǐng)域的一份子,藍色星際會(huì )繼續致力于安防監控平臺中間件技術(shù)的開(kāi)發(fā)與發(fā)展。
評論