姜力 石峰 王婷 王鑫
[摘 要] 隨著新疆油田數字油田的建成和深化應用以及智能油田建設的開展,其應用支撐油田信息的應用平臺提供專用客戶端的方式已經不能完全滿足智能油田應用和集成的需要,信息技術的發展,如何提供輕量級的高效的智能化的資源管理集成和信息一體化應用環境,實現企業信息資源共享和業務的深度融合,提供主動的、友好的用戶應用體驗,滿足不同應用條件下靈活可伸縮的部署管理已成為智能油田建設階段必須要解決的問題。
[關鍵詞] 智能油田;集成應用;資源共享
doi : 10 . 3969 / j . issn . 1673 - 0194 . 2018. 04. 032
[中圖分類號] F270.7;TP315 [文獻標識碼] A [文章編號] 1673 - 0194(2018)04- 0075- 03
1 概 述
1.1 目的和意義
新疆油田打造智能油田建設至今,涉及多個領域勘探、評價、開發與生產、集輸儲運、生產運行、辦公應用,面廣內容豐富,需要一套輕量級的高效的智能化的資源管理集成和信息一體化應用環境,實現企業信息資源共享和業務的深度融合,智能油田應用系統統一管理、資源共享,增強全面感知、趨勢預測、優化決策等智能油田特性。
1.2 設計思想
采用模型驅動的體系架構,在油田信息應用平臺模型的基礎上,通過精簡和優化,形成適合Web平臺元模型框架 。同時采用模塊化服務框架,開發Web平臺核心功能及基礎服務,實現服務的動態裝配和靈活部署 ,并且選擇合適的RIA及HTML5等技術,為應用功能提供豐富界面表現方式和交互性,支持主流瀏覽器應用,能夠為應用開發提供基礎界面模板以及豐富的基礎組件,提高應用系統開發和維護的效率。最終建立完善的集成標準和規范,實現不同應用資源(數據、組件、服務、應用功能)的集成和擴展。
2 研究內容
2.1 總體設計
采用模型驅動的體系架構,形成適合Web平臺元模型框架。采用模塊化服務框架,開發Web平臺核心功能及基礎服務,實現服務的動態裝配和靈活部署。選擇合適的RIA及HTML5等技術,為應用功能提供豐富界面表現方式和交互性,支持主流瀏覽器應用。 為應用開發提供基礎界面模板以及豐富的基礎組件,提高應用系統開發和維護的效率。建立完善的集成標準和規范,實現不同應用資源(數據、組件、服務、應用功能)的集成和擴展。
平臺基于展現層、服務層、數據層的三層架構進行了設計開發。
數據層:系統模型和業務數據采用關系數據庫和JSON、XML等方式存取。
服務層:平臺基于J2EE體系架構,引入GRAILS框架實現服務模塊化管理和集成;針對基于其他技術平臺(.net)開發的業務服務,通過服務總線集成。
展示層:采用組件化開發模式,基于當前主流的SpringMVC +JQuery EasyUI框架構建 。
2.2 功能架構設計
智能油田應用集成系統主要由環境建設、基礎服務、基礎功能、系統定制、系統集成構成。
平臺運行環境建設包括技術標準、運行環境、管理制度三部分,提供系統開發、集成、運維的標準、制度及運行環境;基礎服務包括為服務集成管理、服務監控、性能優化等,為整個系統提供統一數據訪問控制、監控管理,并支持單服務多系統方式部署,統一管理;基礎功能包括數據管理、報表處理、文件管理、業務流程等功能,為系統提供基礎的功能應用,報表處理提供了報表定制工具,支持報表界面化定制,并可導出、打印;業務流管理以業務流程引擎為核心,提供了流程的定義、運行、監控等一體化的流程運行與管理,方便系統快速開發;系統集成提供了統一的集成、開發標準及規范。
2.3 技術架構設計
項目基于J2EE技術體系架構,引入SpringMVC框架作為Web層基礎框架。展示層以Jquery EasyUI組件庫為主要開發技術,同時支持JSP\ASP\EXT等主流前端技術;服務端基于Grails框架開發;系統安全架構基于Spring Security框架,實現與中國石油統一認證服務集成。平臺采用典型的多層分布式體系結構,遵循SOA架構體系,支持restful接口規范,采用統一的基于J2EE的軟件平臺和全程建模、基于組件分層開發的技術路線,并支持大顆粒構件的復用,根據平臺總體方案設計要求,設計主要從以下幾個方面來考慮:
統一的模型服務。從服務中抽取有關模型訪問的操作,形成統一的模型訪問服務,使得重構后的服務更加關注于業務領域的功能實現。
統一的服務框架。從服務中進一步抽取公共的代碼或組件,形成公共的功能服務,例如安全、日志、消息、調度管理等,使得服務的職責更清晰,并且服務可靈活裝配到框架中。
統一的管理工具。提供風格一致、簡單友好的工具監控服務的運行狀況。
統一的技術架構。服務端基于J2EE體系架構,采用Grails框架實現服務的構建,考慮到Java平臺的性能和重構服務的成本,對于二維、三維圖形處理服務和目前已有的一些功能服務繼續保留。
2.4 安全框架設計
結合RBAC模型、AOP和策略模式,提出了Web應用安全框架,此分框架為Web應用提供了比較完整的、細粒度和可擴展的安全保證。
平臺對Web應用提供三個級別的安全保證,頁面安全、請求安全和方法安全,實現了對Web應用的視圖、控制邏輯、業務邏輯的全方位安全檢查,可以讓Web應用的每個操作都處于安全模型的控制之下。同時還提供了日志管理、權限管理等模塊。
2.5 初始化模塊設計
從平臺服務器端獲取平臺框架數據及組件框架資源,同時獲取模板版本配置文件,根據用戶名獲取當前用戶信息以及可訪問控制的資源信息,并存儲到平臺臨時變量里,從平臺展示端獲取系統需要的配置信息,組件框架通過模板配置,展示相應功能。
2.6 功能與流程的集成
各個應用系統的業務功能與流程相互獨立,對于需要兩個或多個應用系統相互配合、進行信息流轉與處理的業務而言,為了提高信息的處理效率,智能油田應用了集成平臺選擇一些相關聯的應用系統功能流程,基于ESB,采用SOA的思想來進行集成。
大規模分布式的企業應用需要相對簡單而實用的中間件技術來簡化和統一越來越復雜、煩瑣的企業級信息系統平臺。面向服務體系架構(SOA)是能夠將應用程序的不同功能單元通過服務之間定義良好的接口和契約聯系起來。SOA使用戶可以不受限制地重復使用軟件,把各種資源互連起來,只要系統開發人員選用標準接口包裝舊的應用程序、把新的應用程序構建成服務,那么其他應用系統就可以很方便地使用這些功能服務。
支撐SOA的關鍵是其消息傳遞架構——企業服務總線(ESB)。 ESB是傳統中間件技術與XML、Web服務等技術相互結合的產物,用于實現企業應用不同消息和信息的準確、高效和安全傳遞。ESB的出現改變了傳統的軟件架構,可以提供比傳統中間件產品更為經濟的解決方案,同時它還可以消除不同應用之間的技術差異,讓不同的應用服務協調運作,實現不同服務之間的通信與整合。
ESB提供了一種開放的、基于標準的消息機制,通過簡單的標準適配器和接口,來完成粗粒度應用(服務)和其他組件之間的互操作,能夠滿足大型異構企業環境的集成需求。它可以在不改變現有基礎結構的情況下讓幾代技術實現互操作。ESB專門用于異構環境,既可以幫助企業遷移到SOA,又能夠讓企業繼續利用現有的已部署的軟件投資。
通過使用ESB,以一種無縫的非侵入方式使企業已有的系統具有全新的服務接口,并能夠在部署環境中支持任何標準。更重要的是,充當“緩沖器”的ESB(負責在諸多服務之間轉換業務邏輯和數據格式)與服務邏輯相分離,從而使得不同的應用程序可以同時使用同一服務,在應用程序或者數據發生變化時,不改動服務代碼。
2.7 系統角色與權限的集成
對于普通用戶來說,他們在每一個系統中都會有各自的角色與權限。從而導致管理員要重復性地從事普通用戶的角色權限的分配與維護。針對一個普通用戶這個角色權限的分配與維護工作已經是相當大的工作量,更何況管理員面對的是成千上萬,甚至于百萬的用戶。所以很有必要采用相應的技術與策略,進行角色與權限的集成,減少用戶角色權限根本維護的工作量與復雜度。
各個應用系統保留自己的系統角色與權限,門戶當是提供一個可以同時管理用戶所有角色與權限的頁面部件。管理員可以在這個頁面部件上一目了然地了解到一個用戶在多個應用系統中的角色權限,并可以方便地進行角色權限的維護。頁面部件通過平臺提供的用戶管理模塊進行交互,從而實現修改用戶角色權限的功能。原來應用系統中的角色權限管理界面應相應地停止使用,以保證用戶角色權限管理只有唯一的入口,以免造成不必要的混亂。
2.8 模型設計
模型框架是智能油田應用集成平臺的核心基礎框架,平臺的集成模型需要一個完整的框架來約束,該模型框架借鑒MOF2.0規范和POSC3.0標準規范的一些對象分類特征和對關系的定義,增加了對數據實體之間的關系的描述和定義,其次該模型框架是在數據管理平臺、業務流程管理平臺、數據交換與共享系統、用戶統一認證系統等各個模型的基礎上進行進一步的總結和抽象,形成了統一平臺的模型框架。按照系統功能領域和層次,劃分了五個層次模型。
集成模型。實現系統和資源集成管理,包括集成資源管理和集成環境管理。
系統模型。管理系統基本信息、系統資源、用戶權限和訪問日志等信息。
功能模型。對應用系統中不同類型的功能進行統一描述和管理。
組件模型。描述和管理組件基本信息、應用功能界面布局、樣式、模板及組件交互。
數據對象模型。管理和描述業務數據的邏輯結構,包括對象、屬性、關系和約束定義。
此外,安全模型是對整體框架的一個橫切,每層模型中都包含有安全的內容。
2.9 技術平臺的確立
為了免除后期建立的應用系統再次出現使用不同技術平臺的現象,企業應該確定適合自己本身需求的技術平臺,并且讓以后建立的應用系統都按照這個統一的技術平臺來進行建設,從而在技術層面上達到一體化技術平臺的效果。
3 結 語
智能油田應用集成平臺研發與應用的目的是為新疆智能油田建設提供一個B/S平臺,提供基于Web的應用框架,實現油田勘探、評價、開發等應用資源的融合和集成,滿足智能油田建設對大數據、知識庫和開放平臺的應用需求,解決智能油田的應用集成問題。
主要參考文獻
[1][英] Jeremy Keith,[加] Jeffrey Sambells.JavaScript DOM編程藝術[M].第2版.楊濤,譯.北京:人民郵電出版社,2011.
[2]陳新發,曾穎,李清輝,支志英. 開啟智能油田[M].北京:科學出版社,2013.
[3]孫衛琴.Tomcat與Java Web開發技術詳解[M].第2版.北京:電子工業出版社,2009.