1.1實現(xiàn)目標
數(shù)據(jù)總線技術是為了東莞地鐵日后業(yè)務發(fā)展所建設的內容,由于現(xiàn)有系統(tǒng)和本階段所新上系統(tǒng),以及后繼由于業(yè)務擴展所新建的多個業(yè)務系統(tǒng),在實現(xiàn)業(yè)務系統(tǒng)與業(yè)務系統(tǒng)數(shù)據(jù)共享與交換服務時,將會以網狀的形勢來進行。利用數(shù)據(jù)總線,制定信息傳遞的標準要求,集成企業(yè)內部門戶、統(tǒng)一通信 和郵件等基礎技術平臺,使業(yè)務系統(tǒng)之間的數(shù)據(jù)共享與交換服務由網狀變?yōu)榫€形,是工程項目管理系統(tǒng)與其它業(yè)務系統(tǒng)之間信息傳遞的統(tǒng)一管理模塊。數(shù)據(jù)總線平臺是一個面向服務(SOA)軟件架構之上的企業(yè)服務總線平臺,它將應用程序的不同功能單元----服務(service),通過服務間定義良好的接口和契約(contract)聯(lián)系起來。接口采用中立的方式定義,獨立于具體實現(xiàn)服務的硬件平臺、操作系統(tǒng)和編程語言,使得構建在這樣的系統(tǒng)中的服務可以使用統(tǒng)一和標準的方式進行通信。主要實現(xiàn)目標:
- 數(shù)據(jù)交互:能夠將一個數(shù)據(jù)庫的某一表中數(shù)據(jù),根據(jù)一定的要求導入到另一數(shù)據(jù)庫相應表中;
- 資源共享與訂閱:能夠實現(xiàn)數(shù)據(jù)資源的共享設置、共享級別設置,訂閱數(shù)據(jù)資源等操作,并能按照訂閱內容交換數(shù)據(jù);
- 信息級別權限控制:一定級別的工作站只能訪問該級別或級別要求更低的共享資源;
- 數(shù)據(jù)操作源和目的數(shù)據(jù)庫可以為多種數(shù)據(jù)庫:如:SQL Server,Oracle等;
- 數(shù)據(jù)交換要支持多種數(shù)據(jù)類型:如:數(shù)值、字符、日期、文件等;
- 信息交換平臺運行模塊要以服務程序模式運行;
- 信息交換平臺支持數(shù)據(jù)配置擴展,可以通過配置文件來更改運行環(huán)境、共享資源數(shù)據(jù)內容以及共享級別;
- 日志記錄:創(chuàng)建日志,方便調試和日后查看;
- 系統(tǒng)具有長時間穩(wěn)定運行的能力;
- 有一定的網絡故障處理能力,當網絡出現(xiàn)問題時,系統(tǒng)可以在一定程度上采取自救措施,如支持斷點續(xù)傳和發(fā)送短信息給等待用戶。
1.2平臺功能架構
圖片 1平臺功能架構
應用層:在數(shù)據(jù)總線平臺中,系統(tǒng)管理模塊作為平臺應用層的一部分,也是平臺運行的基礎模塊,完成平臺運行環(huán)境、平臺運行過程中相關進程的運行方式、時間特性、服務對象與區(qū)享等級、資源信息等的設置操作,為實現(xiàn)數(shù)據(jù)交換提供基礎支撐服務;數(shù)據(jù)交換服務模塊同樣是應用層的組成部分,完成具體的數(shù)據(jù)交換功能,根據(jù)系統(tǒng)管理部分的設置信息有效有序的管理消息、進行數(shù)據(jù)的接收、發(fā)送、解析、整編及保存等相關操作。
認證層:身份認證屬認證層,是指在系統(tǒng)運行過程中,根據(jù)系統(tǒng)管理相關部分的設置信息判斷發(fā)出訂閱申請的用戶在本平臺中具有的共享級別信息,從而作到權限的有效控制,防止信息泄露。
表現(xiàn)層:人機交互界面是表現(xiàn)層內容,是計算機軟件操作者與軟件系統(tǒng)進行交互的途徑,本平臺除在后臺自動運行的數(shù)據(jù)傳輸及進程管理方面的功能外,所有系統(tǒng)參數(shù)設置、資源定制管理方面的操作均通過表現(xiàn)層的人機交互界面完成。
1.3功能模塊
1.3.1功能劃分
信息交換平臺除一部分設置功能需要用戶通過界面控制完成外,數(shù)據(jù)交換功能需要長期穩(wěn)定的在后臺運行,為水務信息各應用提供數(shù)據(jù)共享與交換服務,因此本平臺功能可分為系統(tǒng)管理(或叫數(shù)據(jù)交換管理)和數(shù)據(jù)交換服務兩部分。其功能結構圖如下:圖片 2信息交換平臺功能結構圖
1.3.1.1系統(tǒng)管理模塊
分為運行環(huán)境配置、注冊管理、目錄服務管理、權限管理、訂閱定制、日志定制、安全管理、其它參數(shù)設置七個子模塊,功能概述如下:- 運行環(huán)境配置:完成平臺運行的系統(tǒng)環(huán)境、可以連接的數(shù)據(jù)庫類型、連接方式及參數(shù)、可以接受轉換的數(shù)據(jù)類型等支持系統(tǒng)運行環(huán)境的基礎信息配置。
- 注冊管理:完成通過本平臺進行數(shù)據(jù)交換與共享的所有應用系統(tǒng)在局中心平臺的注冊,獲取相應訪問信息范圍及其它輔助信息,只有在本平臺注冊過的系統(tǒng)才可以通過本平臺與局中心及其它分中心之間實現(xiàn)數(shù)據(jù)的交換與共享。
- 目錄服務管理:系統(tǒng)以目錄的形式管理所有信息元素,對各類信息元素進行分類管理,分類從多角度進行,如按基礎信息、業(yè)務信息;服務對象(這里指局中心各系統(tǒng)及分中心相關系統(tǒng))等,每種分類及具體信息均按一定規(guī)則被編制成目錄形式,且在整個目錄中均有唯一的ID標識,同時基礎信息和業(yè)務信息元素按可以訪問的秘密程度分組,與系統(tǒng)用戶組對應,這樣便于對有請求的系統(tǒng)用戶(這里指發(fā)出請求的相關應用系統(tǒng))進行訪問內容控制,即根據(jù)目錄索引快速定位到當前用戶有權訪問的數(shù)據(jù)范圍,并迅速定位用戶指定信息。目錄信息的類別、內容可根據(jù)實際需要由人工或系統(tǒng)設定自動增加整理,并定時給出總目錄詳細信息及目錄變化記錄等。
- 權限管理:在本平臺中,權限管理分為兩部分完成,一是對操作者的管理與權限分配,實現(xiàn)操作者使用本平臺具體功能的權限對應管理;二是對系統(tǒng)用戶的可訪問信息的權限設置,所有欲使用本平臺進行數(shù)據(jù)交換的應用系統(tǒng)需首先在本平臺上注冊身份,注冊方式可以由系統(tǒng)自動判別注冊也可以由管理員通過相關界面輸入系統(tǒng)內,并對各用戶可以訪問的信息內容進行權限等級劃分——不同級別的用戶可以訪問的資源范圍不同。在此后的運行中,平臺會自動判斷提出請求的用戶身份并與其權限對應,從而保證用戶的正當權力和數(shù)據(jù)信息的保密性。
- 訂閱定制:各用戶均可訂閱其它用戶作好訂閱分配的數(shù)據(jù)信息集,可以根據(jù)各自權限及所需信息訂閱其它用戶的可訂閱信息數(shù)據(jù),從而大限度的包容了由業(yè)務變動帶來的需求信息變化,也靈活的實現(xiàn)了不同時期、不同級別用戶對數(shù)據(jù)的不同需求。
- 日志定制:本平臺將日志按重要程度分級管理,并由用戶進行設置(當然系統(tǒng)會提供默認設置)應記錄的日志范圍,系統(tǒng)會根據(jù)設置信息記錄相關日志。
- 安全管理:包括信息數(shù)據(jù)安全及網絡安全兩部分,信息安全又為分訪問安全與傳輸安全兩種,訪問安全是指本平臺通過對用戶進行身份認證、權限判斷的方式保護正當用戶的應得權力,同時避免信息的非法訪問;傳輸安全指本系統(tǒng)對傳輸數(shù)據(jù)按一定規(guī)則進行加密封裝之后再行傳送,接收時同樣首先進行解密和有效性驗證后才對數(shù)據(jù)進行解析、整編、保存相關處理;網絡安全是考慮到本平臺的數(shù)據(jù)交換服務進程要長期依托網絡運行,因此應具有一定的自動監(jiān)測網絡狀態(tài)及故障應對措施,確保信息的完整和安全。
- 其它參數(shù)設置:支撐系統(tǒng)運行及方便用戶的其它參數(shù)設置功能。
1.3.1.2數(shù)據(jù)交換服務模塊
包括消息管理、隊列管理、發(fā)送管理、接收管理、封裝與解析、數(shù)據(jù)整編、數(shù)據(jù)保存和其它相關服務八個子模塊,功能概述如下:- 消息管理:平臺提供消息管理機制,統(tǒng)一管理經過平臺的收發(fā)信息。各用戶發(fā)送過來的請求中均有各自的特征信息,平臺接收與準備發(fā)送的消息也同樣以一定規(guī)則驗證特征信息,然后根據(jù)指定原則對各種消息進行驗證、歸類、排序等一系列管理操作,便于通過平臺的各類消息有序的傳遞。
- 隊列管理:當通過本平臺的請求較多時,如果不對各類消息加以控制會產生資源爭用或并發(fā)沖突的現(xiàn)象,并且可能會出現(xiàn)優(yōu)先級較高的請求反而等待時間過長現(xiàn)象,因此需要平臺對隊列進行有序管理,隊列管理根據(jù)消息分類的結果及發(fā)出請求的用戶優(yōu)先級及消息本身的優(yōu)先級進行綜合判斷給出合理排序。
- 發(fā)送管理:本交換平臺在處理各類數(shù)據(jù)交換與共享請求時,會向請求方發(fā)送處理結果或其它中間信息,本平臺依據(jù)發(fā)送數(shù)據(jù)包的特征標識找到接收方,并首先探測網絡狀況,許可時即進行發(fā)送操作,并自動記錄發(fā)送日志。
- 接收管理:與發(fā)送管理相對應,本平臺在接收各用戶傳送過來的信息時,首先驗證數(shù)據(jù)包的有效性、接收目標等內容,將數(shù)據(jù)解析后接收并歸入相應的目標信息集隊列等待下一步處理。
- 封裝解析:封裝與解析是與發(fā)送和接收相對應的兩個過程,封裝指在數(shù)據(jù)發(fā)送前,要按指定規(guī)則對數(shù)據(jù)進行加密、壓縮、封裝,當數(shù)據(jù)量較大,一個數(shù)據(jù)包裝不下時,系統(tǒng)自動將信息分成多個數(shù)據(jù)包,并在每個包內加上相應標識后準備發(fā)送;解析即是接收方在接收到對方傳來的數(shù)據(jù)包后,對數(shù)據(jù)包進行規(guī)則解密、驗證數(shù)據(jù)的有效性,通過后即可整編保存數(shù)據(jù)。
- 數(shù)據(jù)整編:數(shù)據(jù)接收后,要根據(jù)數(shù)據(jù)特性標識進行整編、分析、歸類及相關轉換處理,然后準備保存。
- 數(shù)據(jù)保存:整編無誤的數(shù)據(jù)即可以保存到目的數(shù)據(jù)庫的相關表內,以完成數(shù)據(jù)交換的全部操作。并記錄相關日志。
- 相關服務:提供數(shù)據(jù)交換過程中其它相關服務功能如流量分析、關聯(lián)計算等。
項目管理系統(tǒng)數(shù)據(jù)總線平臺應用
地鐵工程項目管理系統(tǒng)基于協(xié)同工作流平臺,采用分層的系統(tǒng)架構,在與外部系統(tǒng)集成的上,基于SOA整合模式,采用協(xié)同數(shù)據(jù)總線集成平臺,充分使系統(tǒng)達到組件化、松耦合、易擴展的目標。圖片 3工程管理系統(tǒng)體系架構
工程項目管理系統(tǒng)與OA系統(tǒng)、ERP系統(tǒng)、物流系統(tǒng)、檔案系統(tǒng)、預算系統(tǒng)、報賬平臺等外部系統(tǒng)存在信息交換。在項目建議書之前,OA系統(tǒng)通過調用工程管理系統(tǒng)下達開發(fā)任務書;工程管理系統(tǒng)和ERP系統(tǒng)之間存在組織結構數(shù)據(jù)的實時同步;項目到立項的時候,需要根據(jù)項目號從預算系統(tǒng)中實時同步部分立項信息;當項目進行到合同錄入階段以后,物流系統(tǒng)從工程管理系統(tǒng)中取得合同、項目、供應商數(shù)據(jù);工程管理系統(tǒng)中的付款功能需要調用報賬系統(tǒng)中的數(shù)據(jù),方能完成付款;工程管理系統(tǒng)中的項目數(shù)據(jù)需要按季度定時歸檔,存放到檔案系統(tǒng)中。通過數(shù)據(jù)總線平臺將工程管理系統(tǒng)與其他系統(tǒng)有機的整合如圖所示:
圖4 ESB集成