歡迎您光臨中國最大的行業(yè)報(bào)告門戶弘博報(bào)告!
分享到:
監(jiān)控平臺(tái)中間件技術(shù)發(fā)展與突破
2010-10-25 來源:CPS中安網(wǎng) 文字:[    ]
隨著信息技術(shù)的發(fā)展和信息需求的多樣化,信息系統(tǒng)變得越來越龐大、復(fù)雜和多變,為此中間件技術(shù)應(yīng)運(yùn)而生,成為了大型信息系統(tǒng)集成的利器。而安防系統(tǒng)作為信息系統(tǒng)的一個(gè)重要分支,也將越來越多的利用到中間件技術(shù)。

  安防中間件技術(shù)的應(yīng)用現(xiàn)狀

  信息系統(tǒng)綜合集成的水平反映了一個(gè)企業(yè)、一個(gè)部門,乃至整個(gè)國家信息化建設(shè)的水平。制定和遵循相關(guān)技術(shù)標(biāo)準(zhǔn)是一件重要的工作,但是不能照搬工業(yè)化的做法。面對(duì)復(fù)雜而多變的網(wǎng)絡(luò)世界,中間件就成為信息系統(tǒng)綜合集成的利器。

  中間件(middleware)是基礎(chǔ)軟件的一大類,屬于可復(fù)用軟件的范疇。顧名思義,中間件處于操作系統(tǒng)軟件與用戶的應(yīng)用軟件之間。中間件在操作系統(tǒng)、網(wǎng)絡(luò)和數(shù)據(jù)庫之上,應(yīng)用軟件的下層,總的作用是為處于自己上層的應(yīng)用軟件提供運(yùn)行與開發(fā)的環(huán)境,幫助用戶靈活、高效地開發(fā)和集成復(fù)雜的應(yīng)用軟件。

  在中間件產(chǎn)生以前,應(yīng)用軟件直接使用操作系統(tǒng)、網(wǎng)絡(luò)衆(zhòng)-議和數(shù)據(jù)庫等開發(fā),這些都是計(jì)算機(jī)最底層的東西,越底層越復(fù)雜,開發(fā)者不得不面臨許多很棘手的問題,如操作系統(tǒng)的多樣性,繁雜的網(wǎng)絡(luò)程序設(shè)計(jì)、管理,復(fù)雜多變的網(wǎng)絡(luò)環(huán)境,數(shù)據(jù)分散處理帶來的不一致性問題、性能和效率、安全等。這些與用戶的業(yè)務(wù)沒有直接關(guān)系,但又必須解決,耗費(fèi)了大量有限的時(shí)間和精力。于是,有人提出能不能將應(yīng)用軟件所要面臨的共性問題進(jìn)行提煉、抽象,在操作系統(tǒng)之上再形成一個(gè)可復(fù)用的部分,供成千上萬的應(yīng)用軟件重復(fù)使用。這一技術(shù)思想最終構(gòu)成了中間件之類的軟件。

  到目前為止,確實(shí)有越來越多的用戶開始接納中間件了,甚至在一些大型采購招標(biāo)項(xiàng)目中,中間件已經(jīng)被明確寫入了招標(biāo)書。目前來看,對(duì)于中間件的應(yīng)用需求,還主要集中在行業(yè)市場(chǎng)上,與前幾年僅僅局限于金融、電信、政府等幾個(gè)領(lǐng)域的市場(chǎng)狀況不同,安防行業(yè)市場(chǎng)對(duì)于中間件的需求已逐步開始,并有望占據(jù)比較大的市場(chǎng)份額。但是在應(yīng)用層次上,還是有比較大的區(qū)別。

  對(duì)于與安防有關(guān)的行業(yè)而言,開始時(shí)依賴現(xiàn)有的套裝產(chǎn)品,采購進(jìn)來之后,直接進(jìn)行應(yīng)用。但是很快在應(yīng)用過程中就會(huì)有更多的定制需求提出來。由于涉及的具體行業(yè)特征的不同,所以導(dǎo)致不同的應(yīng)用需求。這就要求產(chǎn)品能夠根據(jù)行業(yè)性的特征進(jìn)行定制,去除不必要的功能和特性。目前,用戶已經(jīng)意識(shí)到了,市場(chǎng)上提供的套裝產(chǎn)品,其70%的功能行業(yè)永遠(yuǎn)用不到,所用到的功能不過只有30%。其中的診-因,就在于產(chǎn)品就如同操作系統(tǒng)一樣,擁有應(yīng)用非常廣泛的市場(chǎng),需要滿足很多不同的應(yīng)用需求,因此導(dǎo)致功能比較龐大。實(shí)際上,操作系統(tǒng)也存在類似的情況,最初也是不分類別的。但微軟意識(shí)到問題之后,對(duì)于操作系統(tǒng)進(jìn)行了劃分,以Windows為例就有XP和Server的區(qū)分,其中有將 Windows XP細(xì)分為home、home Edition、Professional、Media Center Edition、tablet PC Edition和Professional X64 Edition等不同的版本,而Windows Server又有 system home 、2003和 small business server的劃分。是否能迅速做到這一點(diǎn),根據(jù)不同的應(yīng)用需求提供服務(wù),中間件的引入就顯得格外重要了。如今用戶也很聰明,要求產(chǎn)品能夠根據(jù)需求進(jìn)行定制,而不是一個(gè)大而全、價(jià)格很高的東西。

  因此,隨著各行業(yè)市場(chǎng)安防監(jiān)控業(yè)務(wù)的發(fā)展,成熟的產(chǎn)品還會(huì)有很大的市場(chǎng)空間,但與此同時(shí),定制化的需求也對(duì)于中間件產(chǎn)品提出了更迫切的要求,需要安防企業(yè)在軟件系統(tǒng)架構(gòu)方面盡快轉(zhuǎn)型。

  中間件技術(shù)是安防技術(shù)發(fā)展必由之路

  功能再復(fù)雜的產(chǎn)品都是由大量標(biāo)準(zhǔn)的零件(盡管零件可能只在本領(lǐng)域內(nèi)有用)組成,零件在生產(chǎn)線上裝配成一個(gè)成品,所有零件在成品中共同發(fā)揮作用。分工越細(xì)致、專業(yè)生產(chǎn)的程度越高,總體生產(chǎn)效率就越高。而中間件技術(shù)所扮演的角色就是把零件、生產(chǎn)線和裝配運(yùn)行的概念運(yùn)用在軟件工業(yè)中,可以預(yù)見,中間件技術(shù)是軟件產(chǎn)業(yè)化革命的必然發(fā)展趨勢(shì)。從應(yīng)用軟件的角度來看,我們需要一個(gè)穩(wěn)定的、技術(shù)依賴性較弱的方法來描述行業(yè)應(yīng)用的不斷升級(jí)的業(yè)務(wù)邏糪-結(jié)構(gòu)。業(yè)務(wù)邏糪-會(huì)按照行業(yè)需求的不斷深挖而發(fā)展,卻不應(yīng)該太多的因?yàn)榧夹g(shù)的變化而重新編寫。中間件思想的應(yīng)用就可以很好地解決這一難題。

    安防監(jiān)控中間件就是為不斷發(fā)展變化的、具有個(gè)性化特征的各個(gè)行業(yè)應(yīng)用軟件而打造的一個(gè)中間件平臺(tái)。在為行業(yè)提供解決方案的時(shí)候,可以通過中間件迅速構(gòu)建業(yè)務(wù)邏糪-、部署應(yīng)用并極其方便地與其他業(yè)務(wù)系統(tǒng)進(jìn)行整合。

  中間件解決了行業(yè)應(yīng)用的結(jié)構(gòu)問題。目前行業(yè)應(yīng)用的選擇有兩個(gè),即購套裝軟件和定制開發(fā)。一方面,套裝軟件的可塑性相對(duì)較差。如果用戶有一些獨(dú)特的需求就難以實(shí)現(xiàn),而從零開發(fā)的應(yīng)用軟件固然能滿足某時(shí)間點(diǎn)的固化需求,但是開發(fā)周期卻過長(zhǎng),而且難于保證最終系統(tǒng)的質(zhì)量,以及系統(tǒng)后期的需求變化和維護(hù)問題。通過面向中間件的開發(fā),系統(tǒng)是按照個(gè)性化的需求,從一個(gè)比較完備、比較成熟的構(gòu)件庫組裝而成,大大提高了系統(tǒng)的成功率、穩(wěn)定性、適應(yīng)性和逐步發(fā)展性。

    靜觀時(shí)下火爆的家庭裝潢行業(yè)的構(gòu)件化作業(yè)可見一斑。面向中間件的開發(fā)方式解決了行業(yè)應(yīng)用的開發(fā)和管理問題。通過建立一個(gè)不斷完整的構(gòu)件庫,行業(yè)的知識(shí)可以得到有效的管理。業(yè)務(wù)知識(shí)不是在上百萬行的代碼之中,也不是在每天晚上回家的員工腦里,而是在一個(gè)可見的、可控的構(gòu)件庫中,便于管理、衡量,達(dá)到持續(xù)發(fā)展的目的。開發(fā)人員可以看到自己的業(yè)務(wù)、知識(shí)和流程,也通過構(gòu)件庫來不斷發(fā)展自己的核心競(jìng)爭(zhēng)力。

    否則,有數(shù)百人的安防大企業(yè)和一個(gè)新開始的只有二三十人的小公司沒有什么本質(zhì)區(qū)別。很多軟件工程師也面臨這樣一個(gè)問題。剛從學(xué)校出來的幾年,大家比較喜歡技術(shù)鉆研,熬夜寫代碼,找Bug。而后自己想想,收獲在哪里呢?確實(shí)每個(gè)人都積累了很多經(jīng)歷和經(jīng)驗(yàn),但只是一個(gè)更熟練的代碼工具。逐漸地,大家希望自己能從日常的代碼中逃離出來,去設(shè)計(jì)、規(guī)劃一個(gè)大型的軟件系統(tǒng),而且能夠長(zhǎng)期持續(xù)發(fā)展。面向中間件的開發(fā)模式也正是這樣的一個(gè)承載思想、承載知識(shí)、承載經(jīng)驗(yàn)的平臺(tái)。千呼萬喚始出來!面向中間件是安防企業(yè)發(fā)展的希望,是優(yōu)秀的軟件架構(gòu)師的希望。

  安防中間件分類與突破

  安防中間件可以劃分為基礎(chǔ)中間件、應(yīng)用中間件和領(lǐng)域應(yīng)用框架三類。其中,應(yīng)用中間件主要有數(shù)據(jù)資源集成、應(yīng)用資源集成、業(yè)務(wù)流程集成、門戶集成等中間件。應(yīng)用代碼集成中間件和業(yè)務(wù)流程集成中間件都是針對(duì)信息系統(tǒng)業(yè)務(wù)層構(gòu)建的。前者利用適配機(jī)制把各種新建和遺留應(yīng)用代碼中的各類方法統(tǒng)一成標(biāo)準(zhǔn)的應(yīng)用接口,并包裝為消息的形式,進(jìn)而通過消息代理機(jī)制,實(shí)現(xiàn)應(yīng)用資源之間跨網(wǎng)絡(luò)的互連、互通和互操作。后者是對(duì)業(yè)務(wù)流程的整個(gè)生命周期進(jìn)行管理和控制,衆(zhòng)-調(diào)參與流程的各應(yīng)用資源代碼之間的動(dòng)態(tài)執(zhí)行關(guān)系,并監(jiān)控和分析其執(zhí)行狀況。業(yè)務(wù)流程集成中間件通常都提供可視化的開發(fā)方法。

  與傳統(tǒng)安防的軟件開發(fā)方式相比,基于中間件的軟件開發(fā)方法有什么突破呢?

  體系結(jié)構(gòu)

  軟件體系結(jié)構(gòu)代表了系統(tǒng)公共的高層次的抽象,它是系統(tǒng)設(shè)計(jì)成敗的關(guān)鍵,其設(shè)計(jì)的核心是能否使用重復(fù)的體系模式。傳統(tǒng)的應(yīng)用系統(tǒng)體系結(jié)構(gòu)從基于主機(jī)的集中式框架,到在網(wǎng)絡(luò)的客戶端上通過網(wǎng)絡(luò)訪問服務(wù)器的框架,都不能適應(yīng)目前所處的商業(yè)環(huán)境,診-因是:用戶過分地依賴于某個(gè)供應(yīng)商的軟件和硬件產(chǎn)品。這種單一供應(yīng)商使得用戶難以利用計(jì)算供應(yīng)商的免費(fèi)市場(chǎng),將計(jì)算基礎(chǔ)設(shè)施的重要決定交給第三方處理,這顯然不利于用戶在多業(yè)務(wù)之間共享信息。

  封裝的應(yīng)用系統(tǒng)在出現(xiàn)某種組織需要時(shí),難以用定制來維護(hù)系統(tǒng),從而難以滿足多變的需求。不能實(shí)現(xiàn)分析、設(shè)計(jì)核心功能重用,最多只能實(shí)現(xiàn)代碼重用。如今,應(yīng)用系統(tǒng)已經(jīng)發(fā)展成為在Intranet和Internet上的各種客戶端可遠(yuǎn)程訪問的分布式、多層次異構(gòu)系統(tǒng)。中間件為開發(fā)這樣的應(yīng)用系統(tǒng)提供了新的系統(tǒng)體系結(jié)構(gòu),它是標(biāo)準(zhǔn)定義的、分布式、模塊化結(jié)構(gòu),使應(yīng)用系統(tǒng)可分成幾個(gè)獨(dú)立部分開發(fā),可用增量方式。這樣的體系結(jié)構(gòu)實(shí)現(xiàn)了過內(nèi)部開發(fā)個(gè)別部件、重組部件、升級(jí)部件來集成和定制應(yīng)用軟件系統(tǒng),使得系統(tǒng)具有靈活方便的升級(jí)和系統(tǒng)模塊的更新維護(hù)能力。

  封裝最好的實(shí)踐案例,使其在商業(yè)條件改變的情況下,還能夠被采用,并能保留已有資源。由此看出,安防中間件從系統(tǒng)高層次的抽象上解決了復(fù)用性與異構(gòu)互操作性,這正是分布式網(wǎng)絡(luò)系統(tǒng)所希望解決的難題。

  開發(fā)過程

  傳統(tǒng)安防的軟件開發(fā)過程在重用元素、開發(fā)方法上都與基于中間件有很大的不同。雖然面向?qū)ο蠹夹g(shù)促進(jìn)了軟件重用,但是,只實(shí)現(xiàn)了類和類繼承的重用。在整個(gè)系統(tǒng)和類之間還存在很大的缺口。為填補(bǔ)這個(gè)缺口,人們?cè)肓嗽S多方法,如系統(tǒng)體系結(jié)構(gòu)、框架、設(shè)計(jì)模式等。

  自從中間件出現(xiàn)以來,軟件的重用才得到了根本改變。它實(shí)現(xiàn)了分析、設(shè)計(jì)、類等多層次上的重用。在分析抽象層上,重用元素有子系統(tǒng)、類;在設(shè)計(jì)層上重用元素有系統(tǒng)體系結(jié)構(gòu)、子系統(tǒng)體系結(jié)構(gòu)、設(shè)計(jì)模式、框架、容器、中間件、類庫、模板、抽象類等。

  在軟件開發(fā)方法上,中間件引導(dǎo)安防軟件開發(fā)從應(yīng)用系統(tǒng)開發(fā)轉(zhuǎn)變?yōu)閼?yīng)用系統(tǒng)集成。建立一個(gè)應(yīng)用系統(tǒng)需要重用很多已有的中間件模塊,這些中間件模塊可能是在不同的時(shí)間、由不同的人員開發(fā),并有各種不同的用途。在這種情況下,應(yīng)用系統(tǒng)的開發(fā)過程就變成對(duì)中間件接口、中間件上下文以及框架環(huán)境一致性的逐漸探索過程。例如,在J2EE平臺(tái)上,用EJB框架開發(fā)應(yīng)用系統(tǒng),主要工作是將應(yīng)用邏糪-按session Bean、entity Bean設(shè)計(jì)開發(fā),并利用JTS事務(wù)處理的服務(wù)實(shí)現(xiàn)應(yīng)用系統(tǒng)。其主要難點(diǎn)是事務(wù)劃分、中間件的部署與開發(fā)環(huán)境配置。概括地說,傳統(tǒng)的軟件開發(fā)過程是串行瀑布式、流水線的過程;而中間件模式是并發(fā)進(jìn)化式,不斷升級(jí)完善的過程。

  安防中間件的設(shè)計(jì)理念

  軟件方法學(xué)是從各種不同角度、不同思路去認(rèn)識(shí)軟件的本質(zhì)。傳統(tǒng)的軟件方法學(xué)是從面向機(jī)器、面向數(shù)據(jù)、面向過程、面向功能、面向數(shù)據(jù)流、面向?qū)ο蟮炔粩鄤?chuàng)新的觀點(diǎn)反映問題的本質(zhì)。整個(gè)軟件的發(fā)展歷程使人們?cè)絹碓秸J(rèn)識(shí)到應(yīng)按客觀世界規(guī)律去解決軟件方法學(xué)問題。直到面向?qū)ο蠓椒ǖ某霈F(xiàn),才使軟件方法學(xué)邁進(jìn)了一大步。但是,在安防更高層次上的重用、分布式異構(gòu)互操作的難點(diǎn)還沒有解決,基于安防中間件的開發(fā)模式才引入軟件方法學(xué),并為解決這個(gè)難題提供了機(jī)會(huì)。它把應(yīng)用業(yè)務(wù)和實(shí)現(xiàn)分離,即邏糪-與數(shù)據(jù)的分離,提供標(biāo)準(zhǔn)接口和框架,使軟件開發(fā)方法變成中間件的組合。因此,安防中間件體現(xiàn)出了一個(gè)全新的設(shè)計(jì)理念和發(fā)展模式

文字:[    ] [打印本頁] [返回頂部]