吳鵬
(廣州市電子政務中心,廣東廣州 510635)
云環境下基于中間件的電子政務系統
吳鵬
(廣州市電子政務中心,廣東廣州 510635)
計算機及網絡技術的發展,信息社會對效率的追求,促成了電子政務系統的提出與應用發展。現有系統都是各部門在各自的設備中獨自建設管理,不僅造成資源浪費,還因為無統一標準而導致交互困難,影響工作效率進一步提升,成為亟待解決的問題。在研究云計算與中間件相關概念與技術的基礎上,本文提出了一種云環境下基于中間件的電子政務系統。云環境將解決資源問題,中間件則構建統一系統建設標準,解決不同系統交互問題。
云環境 電子政務系統 中間件
隨著計算機與網絡技術的快速發展,人們正步入一個全面信息化的時代,生活工作各個方面都與信息化息息相關,政府辦公亦是如此。在這種情況下,電子政務的概念被提出,相應的電子政務系統正在不斷被投入到實踐應用中。電子政務指的是運用計算機、通信以及網絡等現代科學技術,打破時間、空間、部門的限制,將政府的組織結構以及工作流程進行優化重組,從而建立精簡、高效、廉潔、公平的政府運作模式,為社會提供全方位的、透明的政府服務[1]。電子政務系統自動化的特點使政府工作人員擺脫了以往反復、繁瑣的紙質工作過程,在提高了工作效率的同時節省了成本,因此受到政府部門的青睞,得到了廣泛的應用。
但是,現在的電子政務系統也存在著不少問題。它們沒有統一的建設標準,而是根據各個部門的不同工作需求而建立,甚至在同一個部門內也可能存在多個針對不同業務的電子政務系統。這些系統由于建設標準不同,因此結構也各不相同,嚴重阻礙了相互之間的信息交互與共享,從一方面促使各個系統形成了信息孤島[2],不利于各個部門的溝通與交流。同時,現有電子政務系統是由各自所屬的部門提供設備、人員來運行與維護,這需要花費大量的人力成本,同時配置的設備資源常常多于實際使用的資源,造成了基礎設備的浪費。電子政務系統現存的缺點不僅造成了資源的浪費,還阻礙了工作效率、規模的進一步提升,在如今講求效率的信息社會中成為了亟待解決的問題。
云計算概念的提出,為解決上述問題提供了一個可行的方向。云是一個整合各種軟硬件資源、面向廣大用戶提供各類服務的靈活、高效的計算平臺,它的這一特性向我們指出了利用云環境解決電子政務系統資源問題的可能。通過使用云平臺的服務,各部門不必再考慮基礎設施的問題,只需要付出比原有成本低得多的代價便能使用同樣的設備資源,同時不會造成資源的浪費。在人力資源方面,也僅需投入開發、維護系統的資源,而不必再投入維護基礎設施的成本。但是,如果僅僅只是將不同的電子政務系統簡單地托管到云環境中,對于工作效率的提升并無太大作用,因為由于建設標準的不一致,各個系統之間的結構、接口仍存在著巨大差異,信息交互共享依然存在障礙。在這種情況下,考慮將云平臺與中間件結合來設計問題的解決方案。作為中間層的軟件,中間件可以將電子政務系統工作流程所涉及的各個步驟、數據信息進行抽象,形成統一的規范與格式。作為云用戶的各部門通過調用中間件,即可根據各自需求建設具有統一標準的不同電子政務系統,使各系統之間的交互不再成為工作效率提升的障礙。
根據NIST(National Institute of Standards and Technology)的定義[3],云計算是一種允許隨時、方便地對一個可配置的共享計算資源池進行按需網絡訪問的模型,它能夠以最小的管理代價以及與服務提供商最少交互來提供或釋放計算資源。
根據云計算的定義,它的本質特征包含如下幾個方面。
(1)按需自主服務。云用戶能夠根據需要單方面地指定計算的能力(如服務器時間以及網絡存儲等)而不必與每個服務提供商都進行人工交互。
(2)廣泛的網絡訪問。云計算的實現基于互聯網絡,用戶可以根據標準機制使用各種各樣的客戶端平臺(例如移動電話、平板電腦、工作站、個人電腦等)對云進行訪問。
(3)資源池。服務提供商的計算資源形成池,以多租戶共享的模式為多用戶提供服務,根據用戶的消費需求為用戶動態地分配以及再分配物理或者虛擬資源。用戶無法控制或者知道服務提供商資源的準確位置,但是能夠在一定程度上指定要使用的資源的位置(如哪個國家、哪個州或者數據中心的資源)。
(4)快速靈活。云計算的資源能夠根據需求靈活地供應與釋放,即對于用戶來說,云計算能夠供應的資源是沒有限制的,能夠在任何時間使用任何數量的資源。
(5)量化的服務。云系統能夠通過在一定層次上測量每種服務來自動控制以及優化資源的使用。由于資源的使用能夠被監視、控制以及報告,因此云對服務提供商和該服務的使用者提供了透明性。
目前存在的云根據其部署方式可以分為私有云、社區云、公共云以及混合云四類。私有云為單個組織的多個用戶提供服務,僅僅只面向該組織開放。社群云面向一個群體的多個組織,這些組織具有共同的關注點,如任務、安全需求、政策等。公共云則是面向所有的用戶,任何用戶只要付出一定的代價就能夠獲得需要的資源及服務。混合云由兩種或者兩種以上不同類型的云聯合構成,通過標準化技術或者專有技術將不同結構的云連接到一起。
中間件技術是一類被設計用于幫助管理分布式系統復雜、非同質內容的軟件技術[4]。中間件位于操作系統之上、應用層之下,為分布式系統各個部分提供抽象化程序接口,屏蔽操作系統與網絡協議的差異,實現計算資源與網絡通信的管理,其所處層次結構如圖1所示。一般認為,中間件具有如下基本特點[5]。(1)支持標準的協議與接口。
(2)支持分布式計算,提供網絡、硬件、操作系統平臺透明性。
(3)能夠運行在多種操作系統與硬件構成的平臺上。
(4)滿足大量應用的不同需求。
根據IDC的分類方式,中間件可以被分為6種類型[6]:終端仿真/屏幕轉換中間件,用于實現使用圖形用戶接口的客戶端與使用已有字符接口的服務器應用程序的交互;數據訪問中間件,用于應用程序與數據源之間的互操作;遠程過程調用中間件,用于客戶端應用調用遠端服務器的過程;消息中間件,適用于事件驅動應用,在一個事件發生時通知服務端做何操作;交易中間件,專門用于聯機交易處理系統;對象中間件,提供一個標準的構件框架,使不同廠家的軟件能夠在不同地址空間、操作系統或者網絡之間進行交互。
中間件技術屏蔽網絡與操作系統差異、提供統一接口框架的特點使它能在消除信息孤島、推動無邊界信息流動方面發揮重要作用。對于現在結構各異的電子政務系統,中間件的使用是一個有效的優化方案。
在我們的設計中,我們的云電子政務系統將分為四個層次:UI界面層、應用服務層、中間件層、云基礎設施層。系統總體的層次結構如圖2所示。
在圖2的這個結構中,應用服務層與中間件層構成了電子政務系統的核心部分。由于該電子政務系統是基于中間件設計的,因此下面將會重點介紹中間件層的內容設計,同時簡要介紹其他層次的內容。
在中間件層次中,我們引入了四類中間件:工作流中間件、消息處理中間件、文件管理中間件、認證授權中間件。這四類中間件基本上涵蓋了電子政務系統工作流程中的所有步驟以及相關的信息數據,調用這四個中間件即可構成一個具有統一標準的電子政務系統主體結構或者框架。因此接下來介紹每個中間件設計的用途與特點。
3.2.1 工作流中間件
我們的工作流中間件支持流程建模,它的元模型基于WFMC規范[7]實現,對業務流程所具有的共性進行完整的抽象與描述,模型中實現了規范中定義的包、流程、活動等概念。現有大多數的電子政務系統都具有相似甚至相同的特征、過程,因此使用工作流中間件對現有這些系統進行流程的抽象建模是必要的,有助于建立統一的流程標準。同時,我們的工作流中間件還支持在WFMC規范基礎上的擴展流程建模,因為對于不同部門或者是不同地區的相同部門,電子政務系統的業務流程也會有所差別,僅僅使用標準化的規范流程是無法完整描述整個業務流程的,這就需要對標準的流程模型進行擴展,補充各自業務流程所需的屬性元素。由于是基于標準流程模型進行擴展,因此不同電子政務系統的流程結構仍然是統一的,不會影響系統之間的交互。
此外,該工作流中間件還支持靜態流程控制與動態流程控制。靜態流程控制是指工作流引擎嚴格按照定義的業務流程驅動相關業務實例的運行,靜態運行的工作流模式包括串型、并型、循環等,其中并型模式又包括了同步分叉、選擇分叉、選擇合并、同步合并。動態流程控制則指的是在系統運行的過程中,動態決定某些步驟跳轉或者回退等。動態流程控制使系統更加靈活,更符合電子政務系統業務流程需求。例如,對于一個具有審批流程的電子政務系統,當進行到流程中某一步時,發現前面某一步的審核結果不符合標準,如果不能回退,那就意味需要停止當前流程,然后從第一步重新開始,這會造成時間與人力的浪費,如果支持回退,那就只需要回到出現問題的步驟重新開始即可。
3.2.2 消息中間件
我們的云電子政務系統采用消息中間件來處理系統運行以及云平臺中各個電子政務系統之間交互的信息。消息中間件是指支持與保障分布式應用程序之間同步/異步收發消息的一類軟件。通過提供消息傳遞與消息隊列模型,消息中間件可以在分布式環境下擴展進程間的通信,支持多硬件、軟件、語言、操作系統之間的消息通信,目前消息中間件的主要標準規范為JMS和AMQP。消息中間件規范了消息的表示格式,能使不同電子政務系統之間的消息交換更為方便。同時,該中間件支持異步消息傳輸使得系統之間的通信不需要一方停下來等待另一方的回復。
3.2.3 文件管理中間件
文件管理中間件主要用于管理云電子政務系統中的各種文件,它使用統一的標準來描述和組織系統中的文件,實現系統文件數據的集中化管理。由于使用了統一的文件描述與組織標準,各個電子政務系統的文件就不再存在格式與形式方面的差異,能夠方便地進行文件共享,跨系統使用文件不會再因為標準不一致而造成問題。同時,文件管理中間件還能夠對文件使用情況、文件生命周期、文件等級等進行控制與管理,及時地備份使用率高的文件、回收銷毀過期的無價值文件,阻止對文件的越級查看。
3.2.4 認證授權中間件
認證授權中間件為各個系統管理用戶、分配權限提供統一的標準與模式。該中間件的存在使各個部門在進行角色管理時基于相同的認證與授權模式,為各系統之間的跨部門合作奠定基礎,在跨部門訪問系統時,只需要按照同樣的標準為其他部門的人員分配角色與權限,而不必再花費其他成本來設計另外的權限分配方案。認證授權中間件還可以為云電子政務系統提供一定的安全性防護,阻止不符合統一認證授權標準的用戶對系統進行訪問,同時防止越級訪問等違規問題,以免造成重要信息的泄漏或者對系統的破壞。
除了中間件層,我們的云電子政務系統還有UI界面層、應用服務層、云基礎設施層這三層結構。UI界面層是為用戶使用云電子政務系統提供交互的接口,如web頁面或者應用程序的客戶端界面等。應用服務層是調用中間件層實現的各個電子政務系統的具體應用程序。云基礎設施層為電子政務系統提供了托管的環境,同時解決云電子政務系統數據存儲、計算等問題,基于政府部門安全性的考慮,云的類型采用私有云或者社區云較為合適。
目前,電子政務系統在各政府部門得到了廣泛的應用,這是追求效率的信息化社會大勢所趨。但是,現有電子政務系統從基礎設施到系統建立維護都是由各部門單獨負責,這不僅造成了設備與人力資源的浪費,還因為各系統結構標準不一致而導致它們之間信息交互共享存在各種問題,形成信息孤島,影響了工作效率的進一步提升。具有按需取用特點的云計算的提出,為解決資源浪費問題指明了方向,而中間件則能抽象電子政務系統的業務流程與數據信息格式,制定統一的系統建設標準,消除各個電子政務系統之間的交互壁壘。由此,我們提出了云環境下基于中間件的電子政務系統,為電子政務系統的未來發展提供一些思路與建議。但是,我們的系統也存在著許多不足。首先,中間件層還有許多不完善的地方。其次,系統安全性沒有進行足夠的考慮,這在新興的云環境中是一個較為嚴重的問題,云用戶對于云環境的安全與隱私有著更多的擔心。今后我們對于這些方面將進行進一步的研究。
[1]鮑凌云,劉文云.云計算在電子政務系統中的應用研究[J].現代情報,2011,04:170-173.
[2]馬社亮.電子政務工程中信息孤島現象原因分析[J].電子政務,2007,04:54-57.
[3]Mell P,Grance T.The NIST definition of cloud computing[J].National Institute of Standards and Technology, 2009,53(6):50.
[4]Bakken D. Middleware[J].Encyclopedia of Distributed Computing,2001,11.
[5]周園春,李淼,張建,李曉歐,張飛.中間件技術綜述[J].計算機工程與應用,2002,15:80-82.
[6]魏勇,張權.中間件技術研究[J].電子技術應用,2004,11:1-4.
[7]Kaya A. Workflow Interoperability: The WfMC Reference Model and an Implementation[D]. Master Thesis, Technical University Hamburg, Hamburg, 2001.
陳志遠,單位:佳都新太科技股份有限公司。