任 聰 王丹陽
(蘭州石化職業技術大學,甘肅 蘭州 730060)
目前,我國石化行業VOCs泄漏檢測治理主要存在檢測及監管流程不完整、檢測數據準確性相對偏低、軟件管理平臺功能不完善等問題,導致企業裝置存在安全隱患、物料損失成本增加、設備生產效率低下、危害人員身體健康等問題。針對以上問題,我們設計開發了石化行業VOCs綜合治理管理平臺。
本平臺的研發采用的是目前主流的Spring Boot框架。在數據獲取方面,采用美國賽默飛公司研發的TVA有毒揮發性氣體分析儀(VOC氣體檢測儀)對現場VOCs氣體的泄漏情況進行檢測;在數據安全性和計算能力方面,通過混合云的技術手段,將后端的業務部署在私有云,前端的頁面部署在公有云,通過VPN網關來實現公有云和私有云之間的互聯互通。
目前,云計算的部署模型有私有云、公有云、混合云、社區云等模型[1]?;旌显剖怯蓛蓚€或兩個以上不同類型的云組成,本研究中采用的是私有云和公有云構成的混合云,同時也是目前最流行的一種混合模式。它既可以利用私有云的安全性,同時也可以使用公有云的計算資源和公有云的可擴展性[2];不僅可以將內部的重要數據保存在本地的數據中心,還可以更高效快捷地完成工作,相比于單純用私有云或者公有云來講都更加完善。在本研究中,我們將前端的應用服務部署在公有云,對外部用戶提供訪問入口,后端的業務實現部署在私有云中,對內部提供專有的計算服務。
Spring Boot是Pivotal團隊在Spring的基礎上提供的一套全新的開源框架,其目的是為了簡化Spring應用的搭建和開發過程。Spring Boot不僅繼承了Spring框架原有的優秀特性,而且還通過簡化配置來進一步簡化了Spring應用的整個搭建和開發過程;它遵循“約定優先于配置”的原則,使用Spring Boot時只需很少的配置,大部分的時候直接使用默認的配置即可。在本研究中,使用Spring Boot框架使我們部署業務、集成安全框架等操作更加方便。
根據上述混合云的部署要求,本系統的云平臺由公有云和私有云2個部分組成。其中私有云部分部署核心業務實現和私有資源,以保證數據具有較高的安全性;公有云部分部署前端公共業務,并為用戶提供公有地址去訪問服務器,以此去獲取相應的公共服務?;跀祿踩煽吭瓌t及混合云的靈活性的特點,構建公有云和私有云之間的安全機制,以此實現公有云和私有云之間的通信和數據傳遞。
本平臺的總體邏輯如圖1所示,首先將前端與后端的系統分別部署在公有云和私有云的Tomcat容器中進行項目啟動,當用戶通過頁面發送訪問請求至公有云部分中的前端控制器后,前端控制器首先對用戶請求進行認證、授權與記錄,然后通過專有通道將用戶請求發送至私有云部分的頁面控制器。私有云部分中的頁面控制器調用相應的業務功能模塊,功能模塊中所需的數據首次從MySQL數據庫中調用其次優先從Redis緩存服務器調用,功能模塊所獲取的數據在模型中進行計算處理后,將數據計算結果返回至頁面控制器,且經專有通道將結果傳送至前端,前端經過解碼之后再將頁面呈現給用戶[3]。

圖1 平臺總體設計邏輯
本平臺系統分為5個層面:支撐層、感知層、數據層、業務層、表現層,具體情況如圖2所示。

圖2 平臺總體架構
(1)支撐層。支撐層是由平臺的基礎所構成的部分,可分為硬件支撐和軟件支撐兩個部分,硬件支撐部分由實體服務器、存儲設備、網絡設備以及其他設備所組成;軟件支撐部分是由阿里云虛擬服務器、Java編程語言、Spring Boot開發框架、MySQL數據庫等軟件組成。
(2)感知層。感知層是平臺識別VOCs氣體和采集氣體泄漏信息的部分。本平臺通過TVA有毒揮發性氣體分析儀(VOC氣體檢測儀)和Eye-C-Gas紅外氣體成像儀對現場VOCs氣體進行識別和采集氣體泄漏情況,實現對檢測數據的感知獲取[4-5]。
(3)數據層。數據層是基于MySQL數據庫的數據文件、部分數據查詢、插入等操作語句及數據表單等構成,其中數據表單包括用戶信息數據表、權限信息數據表、裝置信息數據表、檢測點信息數據表、設備信息數據表、泄漏點信息等。
(4)業務層。業務層是本平臺所有業務功能集合,包括用戶管理、數據分析、檢測管理、分級管理、報告管理等模塊。
(5)表現層。表現層就是用戶與平臺之間的交互式操作界面,實現對用戶的請求接受,以及平臺功能的信息的反饋與操作頁面呈現,為用戶提供應用程序的訪問。
本研究基于用戶體驗為中心設計原則,確保界面直觀、簡潔,操作方便快捷,使用戶接觸到軟件之后對界面所對應的功能一目了然、不需太多培訓就可以方便使用本系統。
頁面采用了目前流行的前端開發框架Boostrap。Boostrap框架在本研究中用于部署動態頁面,通過框架制作動態表格、創建表格字段屬性、下拉菜單、導航條、對話框等元素,方便快捷,且易于自定義設置。ECharts是一款基于Java Script的數據可視化圖表庫,提供直觀、生動、可交互、可個性化定制的數據可視化圖表。它方便各種折線圖、柱狀圖、散點圖、餅圖等的繪制(如可將密封點、檢測點、泄漏點等數據以柱狀圖、折線圖、餅圖等方式直觀展現給客戶)。另外,頁面布局利用DIV標簽來標記頁面不同區塊,并利用CSS樣式對頁面進行渲染優化;通過Ajax技術實現頁面的局部刷新,且跟蹤設備檢測信息的變化情況,實時展示相應系統功能內容和信息。
依據系統的安全性和功能業務的需求,利用Apache Shiro安全框架,使得平臺登錄認證功能能夠安全、有效地實現對平臺用戶進行分級權限管理,設置不同的角色且為各角色分配相應的操作權限,保證用戶信息安全和系統運行安全。平臺的基本業務功能主要有基礎信息管理、監測數據管理、LDAR檢測管理和預警提示功能等(如圖3所示)。

圖3 平臺功能模塊
(1)創建Spring Boot工程
本研究中采用的搭建環境為JDK 1.8、Maven 3.6.3以及Spring Boot 2.2.3。首先搭建JDK環境,通過官方提供的程序安裝包進行下載安裝,之后我們在PC端進行相應環境變量的設置。其次準備Maven工具,從Maven官網下載安裝包進行安裝,之后設置Maven的環境變量。準備好環境后,首先對Maven的settings.xml文件添加我們所需功能的相應配置,之后我們在開發工具中也進行相應的配置工作;其次創建Maven工程,最后導入Spring Boot的相關依賴與配置即可[6-7]。
(2)聯通混合云
本研究中通過阿里云平臺進行混合云的聯通,我們將本地云與具有私有權限控制的阿里云空間整合,構成混合云的私有云部分,之后通過阿里云所提供的VPN網關服務,通過互聯網將公有云和私有云之間的網絡連接起來,由此實現混合云環境。隨后,我們將可以對外訪問的應用服務部署在公有云部分,將數據處理、計算、儲存等后臺服務部署在私有云部分,使二者之間形成安全、高效的服務或信息傳遞機制和增益互助機制,確保私有云環境既具有公有云可擴展、節約成本的特點,同時具有私有云部分的數據安全、SLA等優點。
(1)權限管理
在本平臺中,用戶權限分為3個等級:超級管理員、普通管理員和普通用戶。不同等級的用戶擁有不同的管理權限:超級管理員具有管理注冊用戶及維護系統的全部功能和數據權限,可管理和查看所有用戶的相關信息;普通管理員具有部分管理和維護系統功能和數據權限,可管理和查看比其等級低的用戶的相關信息;一般用戶則只具有管理和查看自身相關信息的權限,僅能訪問系統公共功能以及角色數據權限內的相關操作。本平臺采用Apache Shiro安全框架實現認證和授權管理,當用戶輸入賬號和密碼時,先經過身份認證,經過認證后可讀取出其所具有的角色信息,其次依據角色信息,在自定義的Realm中選擇所對應的權限信息,之后根據用戶所具有的權限信息,為用戶提供相應的業務功能進行操作。
自定義Realm部分代碼如圖4。

圖4 Realm代碼
(2)信息管理
本平臺的信息管理模塊是基于用戶權限進行管理的,通過不同的用戶權限去管理不同用戶的相關功能及操作,實現用戶在自己所具有的權限內的操作,為用戶提供更加智能化的LDAR管理方式,擺脫傳統較為復雜的信息管理方式,方便用戶管理。
(3)檢測管理
該模塊支持設備圖片建檔,檢測任務分配、下載,并根據檢測點位信息,能夠自動生成最優檢測路徑,上傳檢測數據。按部門、密封點類型、地理位置等統計泄漏分布情況,以部門為單位統計泄漏點、修復點匯總情況,均以圖表、柱狀圖、表格等形式反映,時間節點可任意選擇(圖5)。

圖5 泄漏檢測模塊頁面
(4)泄漏管理
若發生泄漏,本系統會按照泄漏排放的標準要求自動下發維修與復檢任務,實時監測維修與復檢過程,維修及復檢完成后,將復檢結果自動上傳到工作后臺。工作流程如下:首先制定維修復檢計劃,包括復檢通知、復檢工單及復檢記錄;其次下發維修復檢通知,告知被檢測單位修復復檢;隨后生成復檢工單,包括部門、工單號、復檢人、開始和結束時間等;最后記錄復檢后的結果(圖6)。

圖6 泄漏管理模塊頁面
本平臺基于Spring Boot框架和混合云技術開發了石化行業VOCs綜合治理管理平臺,通過在Spring Boot框架上整合目前流行的前端設計、業務開發等框架,實現對檢測數據進行匯總、分析,生成相應報表,對異常情況進行報警提示等功能。在功能部署方面,公有云對外開放,提供相應的公共服務,私有云進行數據存儲和計算,具有良好的數據安全性,兩者結合,提升數據計算性能和業務的可擴展性。經過測試和實地應用,系統運行穩定、可靠,為石化企業提高了VOCs泄漏檢測技術管理治理水平。