龔艷,顧國強(qiáng),王占宏
本文以上海市公安局“網(wǎng)上辦案”平臺的建設(shè)工作為例,說明中間層的設(shè)計思路和實際應(yīng)用效果,以此提出分布式業(yè)務(wù)、集中式數(shù)據(jù)庫系統(tǒng)的協(xié)同代理服務(wù)層的模型和設(shè)計方法,并對照實際應(yīng)用效果予以驗證本文提出的設(shè)計模式的高效性、可靠性和安全性。
公安“網(wǎng)上辦案”平臺(以下簡稱“平臺”)中的案件辦理業(yè)務(wù)主要由接報、行政案件和刑事案件辦理等流程組成,每個業(yè)務(wù)流程由各不同業(yè)務(wù)職能單位負(fù)責(zé)。由于各警種的職責(zé)、業(yè)務(wù)規(guī)范以及相應(yīng)的業(yè)務(wù)數(shù)據(jù)標(biāo)準(zhǔn)都不相同,同時,加之公安部門需要對案件數(shù)據(jù)信息進(jìn)行統(tǒng)計和挖掘,所以“平臺”對各類案件及過程的數(shù)據(jù)標(biāo)準(zhǔn)要求非常高,以便能夠統(tǒng)一集中存儲并進(jìn)行關(guān)聯(lián)分析。因此,“平臺”需采用“數(shù)據(jù)庫集中、應(yīng)用模塊分布式部署”的總體設(shè)計原則。
“網(wǎng)上辦案”平臺采用中心數(shù)據(jù)庫模式,在通常情況下可選用面向服務(wù)架構(gòu)(SOA,Service-Oriented Architecture),同時該平臺屬于業(yè)務(wù)流程管理(BPM,Business Process Management)類的事務(wù)處理系統(tǒng),該平臺還具有跨部門、跨業(yè)務(wù)、跨系統(tǒng)的信息交換和共享功能,故又可歸入分布式系統(tǒng)(DS,Distributed System),綜合上述3個方面的因素,該平臺協(xié)同代理服務(wù)層須具有SOA、BMP和DS等各項特征功能。
SOA架構(gòu)最適合面向服務(wù)類型的軟件集成,而該平臺主要任務(wù)是構(gòu)建業(yè)務(wù)流程,其中最復(fù)雜的是統(tǒng)一協(xié)調(diào)各自相對獨(dú)立的應(yīng)用模塊即分布式軟件組件的運(yùn)行,因此,在平臺協(xié)同代理層設(shè)計過程中需滿足系統(tǒng)的幾個特性:(1)系統(tǒng)的安全性,公安案件涉及的均為敏感信息,數(shù)據(jù)的訪問權(quán)限和存儲安全是前提條件。(2)分布式軟件組件的耦合敏捷性,服務(wù)的松耦合設(shè)計可以提供系統(tǒng)應(yīng)變的敏捷性,但給業(yè)務(wù)建模和服務(wù)劃分帶來不確定性,如何兼顧平臺效率與靈便是設(shè)計的重點(diǎn)。(3)BPM的集群調(diào)度與監(jiān)管,調(diào)控設(shè)計主要包括監(jiān)控指令的轉(zhuǎn)發(fā)、內(nèi)存映射文件的通信、數(shù)據(jù)存儲的結(jié)構(gòu)和優(yōu)化及系統(tǒng)同步機(jī)制等內(nèi)容。
基于以上對“網(wǎng)上辦案”平臺的業(yè)務(wù)需求和技術(shù)結(jié)構(gòu)的分析,本文提出一種基于集中式中心數(shù)據(jù)庫的協(xié)同代理服務(wù)層模型的設(shè)計思路。這套服務(wù)層不僅提供了實現(xiàn)和規(guī)范不同應(yīng)用對同一數(shù)據(jù)庫的數(shù)據(jù)訪問及管理功能,還共享了各應(yīng)用模塊需要的公共功能。在統(tǒng)一的技術(shù)標(biāo)準(zhǔn)和業(yè)務(wù)框架下,實現(xiàn)一個縱向貫通、橫向集成、資源共享的平臺,支撐了案件網(wǎng)上辦理的全過程。
傳統(tǒng)分布式系統(tǒng)采用獨(dú)立組件架構(gòu)模式,系統(tǒng)由“表現(xiàn)層-業(yè)務(wù)邏輯層-數(shù)據(jù)層”組成,信息的共享與交換通過數(shù)據(jù)抽取匯集到數(shù)據(jù)資源庫的方式來完成,具體的“網(wǎng)上辦案”平臺傳統(tǒng)技術(shù)框架,如圖1所示:
圖1 傳統(tǒng)三層架構(gòu)示意圖
上述傳統(tǒng)的3層技術(shù)架構(gòu)雖然滿足能業(yè)務(wù)需求,但需要各職能部門分系統(tǒng)獨(dú)立建庫,再由數(shù)據(jù)交換后存放匯集到資源庫中,由此將產(chǎn)生信息共享效率低的問題;同時由于各業(yè)務(wù)中間層相對獨(dú)立,存在相同功能重復(fù)開發(fā)、無法實施業(yè)務(wù)的協(xié)同作業(yè)等問題。針對傳統(tǒng)3層架構(gòu)存在的缺陷,本文改進(jìn)設(shè)計了具有協(xié)同代理功能的服務(wù)層技術(shù)架構(gòu)。
改進(jìn)設(shè)計的分布式業(yè)務(wù)協(xié)同代理服務(wù)層技術(shù)框架以面向服務(wù)架構(gòu)(SOA)為基礎(chǔ),以提高“網(wǎng)上辦案”平臺的應(yīng)變敏捷性,并針對SOA架構(gòu)的不足,本文在SOA架構(gòu)中嵌入了業(yè)務(wù)流程管理(BPM)的事務(wù)處理組件,數(shù)據(jù)訪問和消息管理等模塊。針對公安“網(wǎng)上辦案”平臺各業(yè)務(wù)獨(dú)立應(yīng)用而改進(jìn)的三層結(jié)構(gòu)技術(shù)示意架構(gòu),如圖2所示:
2.5 兩組患者術(shù)后并發(fā)癥發(fā)生率比較 兩組患者術(shù)中均未見盆腔器官損傷發(fā)生。兩組患者術(shù)后并發(fā)癥發(fā)生率比較差異無統(tǒng)計學(xué)意義(χ2=0.519,P>0.05)。見表6。
圖2 改進(jìn)的三層結(jié)構(gòu)技術(shù)架構(gòu)示意圖
從圖2可以看出,改進(jìn)的“網(wǎng)上辦案”平臺技術(shù)架構(gòu)與傳統(tǒng)架構(gòu)的區(qū)別是,在中間協(xié)同代理綜合服務(wù)層中,不僅融合了數(shù)據(jù)服務(wù)、業(yè)務(wù)流程協(xié)同等功能,還共享了各應(yīng)用模塊需要的公共功能,以滿足分布式應(yīng)用的業(yè)務(wù)需求。
在“網(wǎng)上辦案”平臺的協(xié)同代理服務(wù)層中,主要由數(shù)據(jù)庫訪問管理、消息管理、配置管理、公共服務(wù)管理和系統(tǒng)管理等功能組件構(gòu)成,具體示意,如圖3所示:
圖3 協(xié)同代理服務(wù)層組件模塊圖
(1)數(shù)據(jù)庫訪問管理:分布式業(yè)務(wù)應(yīng)用模塊對集中式中心數(shù)據(jù)庫的訪問與獨(dú)立系統(tǒng)相比,各并行事務(wù)流程生產(chǎn)的數(shù)據(jù)對數(shù)據(jù)庫的存儲和響應(yīng)提出更高的要求,這就需要服務(wù)層具有對中心數(shù)據(jù)庫進(jìn)行高質(zhì)量管理的相關(guān)功能。本文設(shè)計該功能組件主要一是針對人、案、物等核心數(shù)據(jù)進(jìn)行訪問管理功能,在日志中詳細(xì)記錄每次訪問情況,包括操作類型、子模塊、訪問描述等;二是針對用戶、權(quán)限、流程的控制功能;三是根據(jù)業(yè)務(wù)實現(xiàn)對訪問中心數(shù)據(jù)庫的操作進(jìn)行封裝的同時,還對中心數(shù)據(jù)庫訪問操作情況進(jìn)行了實時的監(jiān)控,同時保證數(shù)據(jù)的安全性和數(shù)據(jù)庫的穩(wěn)定性。
(2)消息管理:通常系統(tǒng)的消息管理主要實現(xiàn)各職能角色的工作提醒和業(yè)務(wù)模塊間的消息傳遞,而在分布式業(yè)務(wù)的服務(wù)層中其除了完成上述功能外,還需要實現(xiàn)本平臺與其他系統(tǒng)間的消息傳遞或共享。在本文中,消息機(jī)制的設(shè)計是平臺能否正常、有效和協(xié)同工作的關(guān)鍵,這與系統(tǒng)的配置管理是密切相關(guān)的。
(3)配置管理:以SOA架構(gòu)為基礎(chǔ)的分布式系統(tǒng),如何克服傳統(tǒng)SOA架構(gòu)的缺陷,提高系統(tǒng)平臺效率,其關(guān)鍵是BPM如何依據(jù)業(yè)務(wù)需要進(jìn)行靈活配置。在“網(wǎng)上辦案”平臺實際應(yīng)用中,根據(jù)各應(yīng)用業(yè)務(wù)模塊的優(yōu)先級,通過可視化的配置工具,實現(xiàn)了用戶自定義配置各應(yīng)用模塊接入及并發(fā)訪問中心數(shù)據(jù)庫的方式、路徑等參數(shù)。
(4)公共服務(wù)管理:為了提高系統(tǒng)的效率,降低開發(fā)成本,增加系統(tǒng)的安全性,本平臺為各業(yè)務(wù)應(yīng)用模塊提供了統(tǒng)一訪問接口,實現(xiàn)了PKI/PMI的統(tǒng)一管理,包括電子簽章,與GIS系統(tǒng)的無縫聯(lián)結(jié),短信平臺等外部接口,及各類案件及人員編碼的唯一性產(chǎn)生等平臺公共服務(wù)功能。
(5)系統(tǒng)管理:該組件主要包括平臺的后臺管理功能,如平臺的用戶、角色權(quán)限管理,數(shù)據(jù)字典的維護(hù),異常數(shù)據(jù)的處置,與其他系統(tǒng)的數(shù)據(jù)請求與響應(yīng)情況監(jiān)控,以及對中心數(shù)據(jù)庫訪問安全的監(jiān)管等功能。
上海公安“網(wǎng)上辦案”平臺上運(yùn)行著多個業(yè)務(wù)應(yīng)用模塊,隨著業(yè)務(wù)協(xié)同需求的不斷擴(kuò)展,對應(yīng)用和服務(wù)的需求也在不斷增加?!熬W(wǎng)上辦案”平臺是公安系統(tǒng)的核心業(yè)務(wù)平臺之一,關(guān)系到全局民警整個辦案流程運(yùn)作,因此“平臺”需要滿足7x24小時運(yùn)行的高可靠性,其中如何實現(xiàn)在線熱部署和保障服務(wù)的穩(wěn)定運(yùn)行是設(shè)計“協(xié)同代理服務(wù)層”的關(guān)鍵點(diǎn)。
(1)在平臺的運(yùn)行過程中,如何在不重啟協(xié)同代理層服務(wù)器的情況下,實現(xiàn)“服務(wù)在線熱部署”,即在線增加或調(diào)整業(yè)務(wù)服務(wù)組件,使業(yè)務(wù)組件之間互不干擾,同時保障平臺的7x24小時順暢運(yùn)行。本文提出可以通過對異步文件的收集和分析機(jī)制,采用分步實施方法以實現(xiàn)對代理服務(wù)層的組件更新,旨在不斷擴(kuò)展系統(tǒng)功能的前提下為用戶提供持續(xù)穩(wěn)定的系統(tǒng)服務(wù)。在左側(cè)“非熱部署模式”下,當(dāng)需要調(diào)整某服務(wù)組件時,整個協(xié)同代理服務(wù)層(陰影部分)需要重啟,所有服務(wù)被中斷;而在“熱部署模式”下,通過異步文件的收集和分析機(jī)制,服務(wù)層依次調(diào)整相應(yīng)的業(yè)務(wù)組件(陰影部分),其他服務(wù)組件并不受影響,如圖4所示:
圖4 在線熱部署與非在線熱部署模式對比圖
(2)在高并發(fā)用戶登錄的情況下,協(xié)同代理服務(wù)層各個服務(wù)不可避免地存在搶占資源的情況,為保障各類業(yè)務(wù)服務(wù)的正常運(yùn)行,本文認(rèn)為可采用智能優(yōu)先級判別來保證服務(wù)合理運(yùn)行,技術(shù)上采用完全搶占式、優(yōu)先級繼承、健壯的互斥鎖和快速用戶空間互斥(rt-mutexes)策略保證服務(wù)的合理、有序和高效運(yùn)行。
如圖5所示:
圖5
矩形的高度代表該組件所占資源大小。在左側(cè)“一般模式”下,所有組件平均分配資源;而在右側(cè)“智能優(yōu)先級判別模式”下,“協(xié)同代理服務(wù)層”將根據(jù)運(yùn)行情況以及實際的硬件性能,通過上述多種技術(shù)方式對不同的組件進(jìn)行動態(tài)的資源分配,使各服務(wù)組件達(dá)到最優(yōu)的運(yùn)行狀態(tài)。
上海公安“網(wǎng)上辦案”平臺改造并投入使用已有近一年時間,在實際運(yùn)營過程中,改造后的平臺與原先采用傳統(tǒng)3層架構(gòu)的系統(tǒng)相比,取得了明顯實效。特別是在數(shù)據(jù)采集重復(fù)度、數(shù)據(jù)一致性以及數(shù)據(jù)庫安全性方面體現(xiàn)出極大的優(yōu)勢。具體歸納為以下幾個方面。
首先,采用基于SOA架構(gòu)的協(xié)同代理服務(wù)層平臺避免公共數(shù)據(jù)的重復(fù)采集和維護(hù)。在集中數(shù)據(jù)庫的情況下,協(xié)同代理服務(wù)層提供了公共數(shù)據(jù)采集和維護(hù)的統(tǒng)一服務(wù)接口,將相應(yīng)的規(guī)范標(biāo)準(zhǔn)轉(zhuǎn)化為平臺的功能,如避免了在案件辦理過程中,各職能部門多次重復(fù)采集人員、機(jī)構(gòu)等公共信息,為業(yè)務(wù)的信息共享和復(fù)用提供了技術(shù)基礎(chǔ)保障,減輕了一線警員的勞動工作量。
其次,基于BPM設(shè)計的協(xié)同代理服務(wù)層保證了業(yè)務(wù)數(shù)據(jù)的一致性。由于平臺數(shù)據(jù)統(tǒng)一存放在集中數(shù)據(jù)服務(wù)器中,通過合理的數(shù)據(jù)庫表結(jié)構(gòu)設(shè)計可最大限度地減少數(shù)據(jù)冗余,避免了數(shù)據(jù)不一致問題。平臺通過協(xié)同代理層除能實現(xiàn)數(shù)據(jù)一致性檢查外,還可利用數(shù)據(jù)庫本身提供的機(jī)制,如觸發(fā)器、規(guī)則等進(jìn)行數(shù)據(jù)庫服務(wù)器級的一致性控制。例如,分布業(yè)務(wù)中生產(chǎn)出來的人、地、事、物、組織等基礎(chǔ)要素數(shù)據(jù)可通過公共服務(wù)組件的統(tǒng)一編碼以保證整個平臺數(shù)據(jù)的唯一性。
第三,協(xié)同代理服務(wù)層采用的中心數(shù)據(jù)庫模式實現(xiàn)了平臺的數(shù)據(jù)安全保護(hù)。服務(wù)層設(shè)計的重要原則是對數(shù)據(jù)安全級別的保證,通過中間層的隔離管控,在服務(wù)器端實施數(shù)據(jù)訪問的等級授權(quán),包括表、視圖、字段、存儲過程等以防止非法訪問;在客戶端,通過代理服務(wù)層的配置管理組件,將業(yè)務(wù)流程與角色權(quán)限關(guān)聯(lián),從而避免了非正常登錄造成的誤操作事件發(fā)生,同時也防止了非法入侵引起的平臺信息泄密傷害。
基于SOA架構(gòu)的BPM協(xié)同代理服務(wù)層技術(shù)是根據(jù)公安實際情況和需求,結(jié)合IT業(yè)界系統(tǒng)建設(shè)經(jīng)驗提出的模塊化、構(gòu)件化三層架構(gòu),以保證分布式業(yè)務(wù)運(yùn)行部署上的獨(dú)立性和數(shù)據(jù)的集中管理。在上海公安“網(wǎng)上辦案”平臺上的應(yīng)用,證明了這種改進(jìn)的架構(gòu)可以應(yīng)對公安部門“高度集中化管理和多業(yè)務(wù)并行信息化”的應(yīng)用需求。此架構(gòu)技術(shù)可以實現(xiàn)業(yè)務(wù)規(guī)劃與基礎(chǔ)平臺的統(tǒng)一,使得各職能部門的系統(tǒng)之間能無縫連接,其現(xiàn)實意義不僅在于節(jié)約運(yùn)行、維護(hù)及開發(fā)成本,更在于為“業(yè)務(wù)分布、數(shù)據(jù)統(tǒng)一、集約管理”的信息化發(fā)展方向提供了實際應(yīng)用案例。
[1]蘆大鵬,郭荷清,鄭毅強(qiáng).數(shù)據(jù)交換平臺中的中介結(jié)構(gòu)研究[J].計算機(jī)應(yīng)用與軟件,2008(10)
[2]張艷.“一體化政府”建設(shè)實例—集中建設(shè)模式下的青島市電子政務(wù)應(yīng)用系統(tǒng)[J].通訊世界,2007(38B)
[3]李明,王占宏,魯明;基于J2EE框架的混合模式治安管理信息系統(tǒng)研究與應(yīng)用[J];計算機(jī)工程;2003(01)
[4]劉彥.淺議全省數(shù)據(jù)集中的優(yōu)勢與風(fēng)險隱患[J].華南金融電腦,2002(09)
[5]王靜,陳萬馨,符國梁,柯水喜,翁文花.構(gòu)建數(shù)據(jù)大集中的海南電子政務(wù)建設(shè)工程[J].電子政務(wù),2008(10)