數(shù)字化景區(qū)建設(shè)已經(jīng)提出了10余年,各景區(qū)的數(shù)字化建設(shè)取得了成績,但已建系統(tǒng)的價值還需要深入挖掘,消除信息孤島的問題非常突出。住房城鄉(xiāng)建設(shè)部《關(guān)于國家級風(fēng)景名勝區(qū)數(shù)字化景區(qū)建設(shè)工作的指導(dǎo)意見》(建城函〔2010〕226號)(以下簡稱《指導(dǎo)意見》)明確提出數(shù)字景區(qū)建設(shè)指導(dǎo)思想:“建設(shè)風(fēng)景名勝區(qū)數(shù)字化景區(qū),要綜合運(yùn)用現(xiàn)代信息技術(shù)以信息化基礎(chǔ)設(shè)施為支撐,以業(yè)務(wù)應(yīng)用系統(tǒng)為紐帶,以數(shù)據(jù)中心和指揮調(diào)度中心為核心,整合景區(qū)管理資源,實現(xiàn)信息共享,推進(jìn)風(fēng)景名勝區(qū)信息化建設(shè)。”
因此景區(qū)數(shù)字化建設(shè)所涉及的應(yīng)用系統(tǒng)采用什么技術(shù)、如何實現(xiàn)快速的集成(功能、界面、數(shù)據(jù)等),實現(xiàn)互通互聯(lián),發(fā)揮集成協(xié)同效應(yīng)是景區(qū)系統(tǒng)建設(shè)首要考慮的問題,是數(shù)字景區(qū)建設(shè)信息化規(guī)劃的首要問題,本文就此問題進(jìn)行初步的探析,拋磚引玉,希望能夠有所幫助。
傳統(tǒng)的業(yè)務(wù)應(yīng)用集成的層次主要包括三類:數(shù)據(jù)級集成、應(yīng)用接口級集成、業(yè)務(wù)邏輯級集成:
數(shù)據(jù)級集成是面向信息的集成方式,這種方式可能會導(dǎo)致?lián)p壞數(shù)據(jù),打開數(shù)據(jù)庫的安全缺口等;
應(yīng)用接口級集成是面向接口的集成方式,采用該方式對API接口進(jìn)行修改時,將增加大量的工作量,也可能會增加現(xiàn)有應(yīng)用系統(tǒng)的不穩(wěn)定性。
業(yè)務(wù)邏輯級集成是面向過程的集成方式。該集成方式不僅暴露了應(yīng)用程序的業(yè)務(wù)邏輯,而且由于業(yè)務(wù)邏輯的交叉,導(dǎo)致了各個集成系統(tǒng)之間的緊耦合性,降低了應(yīng)用系統(tǒng)的靈活性,增加了整個系統(tǒng)維護(hù)的難度。
上述3種方式都屬于緊耦合的應(yīng)用系統(tǒng)集成方式。這種方式對系統(tǒng)的靈活性和擴(kuò)展性有較大的影響,阻礙景區(qū)業(yè)務(wù)的流程調(diào)整和優(yōu)化,不利于業(yè)務(wù)應(yīng)用發(fā)展。
為解決上述問題,實現(xiàn)景區(qū)應(yīng)用系統(tǒng)的有效協(xié)同、靈活集成,并保證業(yè)務(wù)應(yīng)用系統(tǒng)靈活、快捷添加景區(qū)統(tǒng)一應(yīng)用,需要一種面向功能層的應(yīng)用系統(tǒng)集成方式。該方式不僅要能保證系統(tǒng)的數(shù)據(jù)安全性和邏輯安全性,而且還能實現(xiàn)各系統(tǒng)之間的松耦合,方便系統(tǒng)流程的重組和優(yōu)化。SOA(面向服務(wù)架構(gòu),service-oriented architecture)體系,為這一問題提供了一個比較完美的解決方案。
SOA作為一種面向服務(wù)的架構(gòu),是一種軟件架構(gòu)設(shè)計的模型和方法論。SOA可以簡單地理解為“抽象、松散、耦合和粗粒度”的軟件架構(gòu),它可以根據(jù)服務(wù)請求通過分布式網(wǎng)絡(luò)對松散耦合的應(yīng)用群件進(jìn)行部署、組合和使用。
從業(yè)務(wù)角度來看,一切以最大化“服務(wù)”的價值為出發(fā)點,SOA利用現(xiàn)有的各種應(yīng)用系統(tǒng),重新整合并構(gòu)建起一套新的軟件架構(gòu)。這套軟件架構(gòu)能夠隨著業(yè)務(wù)的變化,隨時靈活地結(jié)合現(xiàn)有服務(wù),組成新軟件,共同服務(wù)于整個景區(qū)的業(yè)務(wù)體系。簡單的理解,可以把SOA看作是模塊化的組件,每個模塊都可以實現(xiàn)獨立功能,而不同模塊之間的結(jié)合則可以提供不同的服務(wù),模塊之間的接口遵循統(tǒng)一標(biāo)準(zhǔn),可以實現(xiàn)低成本的重構(gòu)和重組。
在SOA的技術(shù)框架下,可以把景區(qū)中各類雜亂無章的龐大系統(tǒng)整合成一個全面有序的系統(tǒng),從而增加景區(qū)在業(yè)務(wù)發(fā)展過程中應(yīng)用系統(tǒng)的靈活性,實現(xiàn)景區(qū)信息化管理最大的IT資產(chǎn)利用率。
SOA本質(zhì)要管理的是服務(wù),按照不同層面分為:服務(wù)的實現(xiàn)、服務(wù)的組合、業(yè)務(wù)流程三個層面。
圖1 SOA管理服務(wù)圖
因此,產(chǎn)生最佳SOA實現(xiàn)的方法之一是,將服務(wù)總線(Service Bus,SB)作為網(wǎng)絡(luò)上分布式服務(wù)的基礎(chǔ)結(jié)構(gòu)元素。SB集成方法通過異步的、面向消息的通信基礎(chǔ)結(jié)構(gòu),把系統(tǒng)當(dāng)作相互連接的離散性分布式服務(wù),可以很好地實現(xiàn)獨立系統(tǒng)之間松散耦合和面向文檔的交換。
作為集成架構(gòu)的模式,作為集成架構(gòu)的最佳實踐,其目的就是為了解耦服務(wù)的請求者和提供者。它提供異構(gòu)環(huán)境下的連通性,你用什么技術(shù)和語言都沒關(guān)系,ESB可以都可以幫助打通。
在景區(qū)數(shù)字化建設(shè)中,構(gòu)建的指揮調(diào)度中心集中了景區(qū)的所有信息,包括游客、景點、重點路段、各類保護(hù)區(qū)域、重點防火部位、道路、交通、停車場、觀光車、管理人員和和執(zhí)法車輛等,結(jié)合各類事件報警信息等。需要有一條業(yè)務(wù)、消息協(xié)同系統(tǒng)將所這些系統(tǒng)的業(yè)務(wù)、消息串聯(lián)起來,實現(xiàn)信息的互聯(lián)互通,建立應(yīng)用系統(tǒng)集成的星型拓?fù)浣Y(jié)構(gòu)。SOA(面向服務(wù)架構(gòu),service-oriented architecture)能很好的完成此項工作。
基于前面的分析,數(shù)字化景區(qū)建設(shè)需要建設(shè)集成統(tǒng)一平臺,它是信息共享和互聯(lián)互通的基礎(chǔ)平臺。集成統(tǒng)一平臺由處于應(yīng)用層與操作系統(tǒng)層之間,提供應(yīng)用支撐服務(wù)的一組中間件構(gòu)成。在集成統(tǒng)一平臺的支持下,景區(qū)各應(yīng)用系統(tǒng)以松耦合的方式形成一個有機(jī)整體,共享數(shù)據(jù)信息和流程協(xié)同。實現(xiàn)異構(gòu)系統(tǒng)間的應(yīng)用集成,采用面向服務(wù)的體系架構(gòu)(SOA),基于門戶建立業(yè)務(wù)總線,通過業(yè)務(wù)總線建立標(biāo)準(zhǔn)的服務(wù)接口規(guī)范,使各應(yīng)用子系統(tǒng)通過服務(wù)接口實現(xiàn)與門戶的集成(通訊和數(shù)據(jù)交換)。
景區(qū)應(yīng)用集成在架構(gòu)規(guī)劃上遵循以下理念,采用面向服務(wù)的體系架構(gòu)(SOA),是建立在組件化的基礎(chǔ)上,在應(yīng)用層與操作層之間建設(shè)集成統(tǒng)一平臺,包括提供應(yīng)用支撐服務(wù)的一組中間件。如下圖所示:
圖2 數(shù)字化景區(qū)整體架構(gòu)圖
應(yīng)用集成平臺基于SOA架構(gòu)、ESB,為應(yīng)用層提供標(biāo)準(zhǔn)的應(yīng)用訪問接口,它由三部分組成:
(1)應(yīng)用中間件,即支撐所有應(yīng)用的應(yīng)用服務(wù)器。
(2)協(xié)同工具中間件,即被業(yè)務(wù)協(xié)同中間件調(diào)用的、支持主流標(biāo)準(zhǔn)規(guī)范的消息中間件、數(shù)據(jù)交換中間件、工作流引擎中間件。
(3)是一個開放的,面向服務(wù)的應(yīng)用工具集合,提供數(shù)據(jù)交換(基于元數(shù)據(jù))、數(shù)據(jù)共享(基于數(shù)據(jù)總線)、流程協(xié)作、實時通訊(溝通平臺)等方面的功能,。
針對景區(qū)應(yīng)用集成業(yè)務(wù)系統(tǒng)的整合,考慮到系統(tǒng)建設(shè)是分階段、循序漸進(jìn)、逐步實現(xiàn)的。首先可以只需創(chuàng)建單獨的服務(wù);接下來不僅可以創(chuàng)建服務(wù),而且可以開始將業(yè)務(wù)功能集成到SOA中;第三步涉及將IT基礎(chǔ)設(shè)施轉(zhuǎn)換到SOA模型;最后則集中于轉(zhuǎn)換業(yè)務(wù)模型,以使之成為適應(yīng)需求變化的模型。
對具體的整合對象,按照建模、裝配、部署、管理四個階段實現(xiàn)整合。在建模階段,可以定義業(yè)務(wù)模型或流程、軟件模型和SOA模型。之后就可以創(chuàng)建一組服務(wù),這組服務(wù)可以與已發(fā)布的通用接口一起重用;在部署階段,開發(fā)人員可以提取創(chuàng)建的服務(wù),并把它們放在一個可執(zhí)行、可管理的環(huán)境之中;在使用階段,根據(jù)軟件模型來裝配應(yīng)用程序,并且測試其軟件質(zhì)量以及非功能性需求,比如性能、可伸縮性等等;最后的管理階段是一個長期的過程,在這個階段中,可以監(jiān)控并管理安全性和使用,以及在許多與可能已經(jīng)為SOA制訂好的服務(wù)級協(xié)定或策略相對應(yīng)的方面比較其性能。
這樣由小及大,逐漸在業(yè)務(wù)中進(jìn)行整合擴(kuò)散,并形成整個景區(qū)的IT轉(zhuǎn)型,實現(xiàn)隨需應(yīng)變的景區(qū)應(yīng)用集成。
數(shù)字化景區(qū)建設(shè)中應(yīng)用集成采用什么技術(shù)實現(xiàn)、能否實現(xiàn),是無法逾越的關(guān)鍵任務(wù),是一項系統(tǒng)工程,是數(shù)字化建設(shè)的核心內(nèi)容。
景區(qū)應(yīng)用系統(tǒng)集成屬于EAI的內(nèi)容,本身是一項相當(dāng)復(fù)雜的課題,用于將景區(qū)內(nèi)部的各個分散的應(yīng)用系統(tǒng)有效的聯(lián)系起來,形成一個整體,使景區(qū)內(nèi)部工作流程更加通暢和高效,能加速開發(fā)和使用能滿足更多需求的新應(yīng)用系統(tǒng)。傳統(tǒng)的點對點間的集成,一方面給系統(tǒng)帶來了擴(kuò)展性差的特點,另一方面當(dāng)集成的系統(tǒng)逐漸增多時,系統(tǒng)相互間的關(guān)系將會十分繁瑣難于管理,與此同時應(yīng)用間的信息出現(xiàn)大量冗余,既浪費(fèi)了物力,又浪費(fèi)了人力。本文就是在此基礎(chǔ)上,提出的一基于SOA架構(gòu)的景區(qū)應(yīng)用集成方式,SOA提供了標(biāo)準(zhǔn)化的架構(gòu),一個應(yīng)用對應(yīng)的服務(wù)也能適用于其它應(yīng)用,景區(qū)開發(fā)新應(yīng)用的速度將得到大大提高,同時對舊有系統(tǒng)也可以包裝成服務(wù),服務(wù)之間為了滿足新業(yè)務(wù)的需求可以進(jìn)行組合,從而實現(xiàn)信息系統(tǒng)資源的整合。
SOA 為景區(qū)應(yīng)用系統(tǒng)集成提供了理想的集成框架,采用SB、WebService等技術(shù)實現(xiàn)相結(jié)合的方式能夠滿足各種信息集成要求, 體現(xiàn)了松散耦合、位置透明、協(xié)議獨立的特點, 能夠支持隨需應(yīng)變的動態(tài)業(yè)務(wù)需求, 為“信息孤島”建立了聯(lián)系, 實現(xiàn)了信息的共享和集成。