《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計應(yīng)用 > 數(shù)據(jù)(災(zāi)備)中心中間件應(yīng)用服務(wù)器研究與設(shè)計
數(shù)據(jù)(災(zāi)備)中心中間件應(yīng)用服務(wù)器研究與設(shè)計
2015《電子技術(shù)應(yīng)用》智能電網(wǎng)增刊
馮 揚,張立新,廖明耀,齊志超
(北京中電普華信息技術(shù)有限公司, 北京 100192)
摘要: 為了保障國家電網(wǎng)數(shù)據(jù)(災(zāi)備)中心的安全建設(shè),通過對比國內(nèi)外中間件產(chǎn)品的技術(shù)現(xiàn)狀,提出了一套適合國家電網(wǎng)的中間件應(yīng)用服務(wù)器的基本框架和主要功能,并對交易服務(wù)、快照服務(wù)和日志服務(wù)三個模塊做出了詳細(xì)介紹。之后,搭建了測試環(huán)境,對功能和性能做出了測試,結(jié)果滿足設(shè)計要求和國家電網(wǎng)的要求。對該產(chǎn)品的進一步研發(fā)有助于提升數(shù)據(jù)(災(zāi)備)中心的應(yīng)用服務(wù)自我恢復(fù)能力和數(shù)據(jù)(災(zāi)備)中心的建設(shè),起到了基礎(chǔ)應(yīng)用軟件支持的作用。
Abstract:
Key words :

  馮  揚,張立新,廖明耀,齊志超

 ?。ū本┲须娖杖A信息技術(shù)有限公司, 北京 100192)

  摘  要: 為了保障國家電網(wǎng)數(shù)據(jù)(災(zāi)備)中心的安全建設(shè),通過對比國內(nèi)外中間件產(chǎn)品的技術(shù)現(xiàn)狀,提出了一套適合國家電網(wǎng)的中間件應(yīng)用服務(wù)器的基本框架和主要功能,并對交易服務(wù)、快照服務(wù)和日志服務(wù)三個模塊做出了詳細(xì)介紹。之后,搭建了測試環(huán)境,對功能和性能做出了測試,結(jié)果滿足設(shè)計要求和國家電網(wǎng)的要求。對該產(chǎn)品的進一步研發(fā)有助于提升數(shù)據(jù)(災(zāi)備)中心的應(yīng)用服務(wù)自我恢復(fù)能力和數(shù)據(jù)(災(zāi)備)中心的建設(shè),起到了基礎(chǔ)應(yīng)用軟件支持的作用。

  關(guān)鍵詞: 數(shù)據(jù)(災(zāi)備)中心; 中間件; 交易服務(wù);快照服務(wù);日志服務(wù)

0 引言

  數(shù)據(jù)(災(zāi)備)中心建設(shè)按照國家公司集中式數(shù)據(jù)中心建設(shè)發(fā)展要求,已經(jīng)審議通過。在集中式數(shù)據(jù)中心建設(shè)方案中明確提出要進一步提高IT軟硬件資源利用率,降低整體建設(shè)及運維成本,滿足不斷快速調(diào)優(yōu)需求,提升可控和在控、安全可靠運行、容災(zāi)和恢復(fù)的能力[1]。

  數(shù)據(jù)(災(zāi)備)中心建設(shè)一方面為國網(wǎng)私有云的建設(shè)提供了數(shù)據(jù)安全存儲和備份的保障,另一方面因體系中包含中間件,云環(huán)境采用X86集群[2]方式實現(xiàn)會大量應(yīng)用中間件?,F(xiàn)有的應(yīng)用中間件,由于沒有統(tǒng)一的標(biāo)準(zhǔn),配置、管理方式千差萬別,每個系統(tǒng)都獨立部署,且難以統(tǒng)一使用、復(fù)用和維護。國家電網(wǎng)公司迫切需要一個統(tǒng)一高效安全的中間件產(chǎn)品來實現(xiàn)對數(shù)據(jù)(災(zāi)備)中心建設(shè)的支持。

1 背景概述

  1.1 研究背景

  國網(wǎng)的安全體系中,網(wǎng)絡(luò)層面安全已經(jīng)非常規(guī)范和細(xì)粒度,做到了網(wǎng)絡(luò)隔離、傳輸加密、統(tǒng)一權(quán)限、單點登錄等。而應(yīng)用中間件層次、數(shù)據(jù)庫中間件層次的加密技術(shù)和安全架構(gòu)仍然較模糊,此項目可以通過對中間件級別的安全技術(shù)研發(fā),來實現(xiàn)更底層的安全防護。

  1.2 研究現(xiàn)狀

  現(xiàn)有公司的中間件組件的使用均采用國外產(chǎn)品,版本不統(tǒng)一,且每個系統(tǒng)都需要獨立采購。從歷史上看應(yīng)用中間件在國際上已經(jīng)形成了標(biāo)準(zhǔn),同時國網(wǎng)的已建成項目在開發(fā)中也遵循了這些共通標(biāo)準(zhǔn)。國內(nèi)外的研究現(xiàn)狀具體情況如表1所示。

008.jpg

  1.2.1 Oracle WebLogic Server

  WebLogic是美國Oracle公司出品的一個Application Server,確切地說是一個基于Java(J2EE)架構(gòu)的中間件,WebLogic是用于開發(fā)、集成、部署和管理大型分布式Web應(yīng)用、網(wǎng)絡(luò)應(yīng)用和數(shù)據(jù)庫應(yīng)用的Java應(yīng)用服務(wù)器,也是國網(wǎng)部署最廣泛的的應(yīng)用服務(wù)中間件之一。

  1.2.2 IBM WebSphere Application Server

  IBM WebSphere Application Server提供了一個面向服務(wù)架構(gòu)(Service-Oriented Architecture,SOA)需要的安全可擴展的應(yīng)用程序基礎(chǔ)架構(gòu)。并通過J2EE 5認(rèn)證,支持Java Development Kit (JDK) 6.0、EJB 3.0 和Java Persistence API(JPA),為構(gòu)建可重用的持久性對象提供了簡化的編程模式;對WebSphere MQ的預(yù)置支持和對WebSphere ESB的高度整合,這些產(chǎn)品的組合能夠構(gòu)成一個強大的企業(yè)服務(wù)總線(Enterprise Service Bus),可以整合多種類的應(yīng)用程序和環(huán)境。

  1.2.3 東方通TongWeb應(yīng)用服務(wù)器

  TongWeb應(yīng)用服務(wù)器也是一個獲得Java EE 5認(rèn)證的Java應(yīng)用服務(wù)器,它實現(xiàn)了Java EE 5規(guī)范、最新的Web服務(wù)標(biāo)準(zhǔn)和主流的互操作標(biāo)準(zhǔn)。它提供高級消息傳輸、Web服務(wù)、高可用性、集群和多平臺支持。通過配置TongWeb應(yīng)用服務(wù)器集群,可以實現(xiàn)負(fù)載均衡,增強應(yīng)用的擴展性。通過將高度優(yōu)化的會話服務(wù)器添加到TongWeb應(yīng)用服務(wù)器標(biāo)準(zhǔn)版,TongWeb應(yīng)用服務(wù)器企業(yè)版的集群提供從一個服務(wù)器至另一個服務(wù)器的無縫移植以及故障切換,從而可確保關(guān)鍵應(yīng)用和服務(wù)的持續(xù)運行,幫助企業(yè)應(yīng)對應(yīng)用程序宕機或者服務(wù)意外無法訪問等情況。

  1.2.4 Red Hat JBoss EAP

  JBoss的企業(yè)應(yīng)用平臺(JBoss EAP)是市場領(lǐng)先的、開源的企業(yè)級Java創(chuàng)新性和可擴展的Java應(yīng)用程序開發(fā)和部署平臺。基于企業(yè)用戶對企業(yè)版JBoss的巨大需求,紅帽公司作為開源解決方案廠商中的佼佼者,推出了企業(yè)版JBoss產(chǎn)品—JBoss EAP,得到了廣大企業(yè)級、電信級客戶的認(rèn)同。紅帽資深JBoss專家表示,企業(yè)版JBoss在JBoss AS的基礎(chǔ)上,進行了大幅度改進,二者的差異主要體現(xiàn)在產(chǎn)品、技術(shù)、安全性、可管理性、服務(wù)支持、軟件責(zé)任風(fēng)險與法律問題等方面。

  1.3 問題分析

  從產(chǎn)品的延續(xù)性和兼容性上來說要求應(yīng)用中間件應(yīng)用服務(wù)器既能符合國際標(biāo)準(zhǔn),又能適用于云平臺。能夠承載服務(wù)化的應(yīng)用是對應(yīng)用中間件的最大要求[3],這兩種需求的難點也體現(xiàn)在目前國網(wǎng)的云平臺環(huán)境尚未完全建成(中間件本身也是云平臺的核心之一),在開發(fā)中如何能與云平臺的建設(shè)保持同步,甚至超前是在制定業(yè)務(wù)目標(biāo)時需要著重考慮的。

  對比國內(nèi)外常用的四種中間件產(chǎn)品和采用技術(shù),需確定哪一種更能方便云平臺的在變化中的構(gòu)建模式,更適合在國家電網(wǎng)海量的不同類型的應(yīng)用服務(wù)器上部署和運用。通過各方面全面分析和對比,最終采用了Jboss中間件技術(shù),它能夠便捷、低成本地實現(xiàn)目前建設(shè)所需的功能和性能指標(biāo)。

2 關(guān)鍵技術(shù)和服務(wù)

  2.1 中間件架構(gòu)

  Jboss中間件架構(gòu)全面實現(xiàn)了Java EE 5的規(guī)范、最新的Web服務(wù)標(biāo)準(zhǔn)和主流的互操作標(biāo)準(zhǔn),它提供高級消息傳輸、Web服務(wù)、高可用性、高穩(wěn)定性,并提供對多種主流平臺的全面支持[4]。各種模塊以服務(wù)形式體現(xiàn),架構(gòu)如圖1所示。

002.jpg

  核心8個服務(wù)中有3個是根據(jù)現(xiàn)有需求改進和開發(fā)的,分別是交易服務(wù)、快照服務(wù)和日志服務(wù)。

  2.2 交易服務(wù)

  交易服務(wù)屬于SG-APS中間件的一個功能模塊,開啟此功能可以處理因宕機等非正常運行而產(chǎn)生的中斷的事務(wù)。在事務(wù)開始時、事務(wù)準(zhǔn)備提交時以及提交后都有日志記錄,如果服務(wù)器意外不能正常工作,在服務(wù)器重新啟動的時候會分析不能正常工作前的日志記錄,復(fù)原事務(wù)現(xiàn)場,提交不能正常工作前中斷的事務(wù)。此模塊適用于standalone場景。

  2.3 日志服務(wù)

  日志服務(wù)實現(xiàn)日志模塊配置、日志級別設(shè)置、日志輪轉(zhuǎn)設(shè)置、日志輸出方式配置并可實現(xiàn)自定義日志擴展[5]。日志管理內(nèi)容包括執(zhí)行日志記錄、獲取模塊描述、讀取xml文件元素、解析日志元素、解析根日志元素、添加資源屬性描述、添加設(shè)置參數(shù)描述、覆蓋服務(wù)。

  2.4 快照服務(wù)

  快照服務(wù)記錄了系統(tǒng)不同時間的工作狀態(tài),可以根據(jù)需要定制快照模式,也可以在系統(tǒng)出現(xiàn)故障時,根據(jù)原記錄來恢復(fù)和回放。快照工具的主要功能包括:文件快照定制、文件快照生成、快照文件回放、快照文件存儲[6、7]和管理。

3 實現(xiàn)流程

  3.1 系統(tǒng)啟動

  3.1.1 客戶端日志啟動

  客戶端日志啟動后,發(fā)送日志配送文件。日志發(fā)送配置文件包括發(fā)送文件存在的路徑及發(fā)送的目的地。配置文件讀取模塊加載配置文件,接下來發(fā)送日志數(shù)據(jù),包括請求發(fā)送、確定上次發(fā)送的位置。將讀入的文件內(nèi)容發(fā)送到服務(wù)端。

  3.1.2 日志服務(wù)端管理

  包括參數(shù)管理、日志數(shù)據(jù)接收和日志查詢下載功能。服務(wù)端的配置文件參數(shù)包括文件的存儲路徑定義。

  配置文件主要是對上傳的日志文件存儲位置的定義,此外還有日志記錄解析格式的定義。格式包括如何區(qū)分不同日志和日志如何解析。

  3.1.3 日志數(shù)據(jù)處理

  服務(wù)端提供的服務(wù)主要包括:查詢上次的傳輸位置,生成通信id;接收傳輸?shù)臄?shù)據(jù),服務(wù)端系統(tǒng)時間。

  系統(tǒng)收到的每一個日志文件有一個對應(yīng)的信息文件,記錄相關(guān)的記錄數(shù)。

  系統(tǒng)控制文件對應(yīng)最后的信息文件,如果通信正常,則控制文件指向最后這個文件。如果不是,則說明通信異常,最后的這個文件就應(yīng)該是上次完成的文件。如果不存在,則取最新文件的前一個文件。

  為了確保操作的可控,控制文件先將記錄當(dāng)前位置的文件改名,再建立新的傳輸控制文件。

  3.2 事務(wù)記錄與恢復(fù)

  在系統(tǒng)啟動之后可以開啟中間件服務(wù)器,開始事務(wù)模塊的運行,并生成事務(wù)日志。日志生成記錄事務(wù)工作情況,正常啟動流程如圖2所示。

002.jpg

  當(dāng)系統(tǒng)發(fā)生異常狀態(tài)關(guān)閉時,再次啟動后將出現(xiàn)事務(wù)異常的提示,需要開啟數(shù)據(jù)恢復(fù)服務(wù),根據(jù)事務(wù)日志恢復(fù)到最近標(biāo)記過的正常狀態(tài),從而實現(xiàn)中間件的啟動?;謴?fù)過程如圖3所示。

003.jpg

  3.3 快照定制和回放

  通過快照的定制和回放,實現(xiàn)系統(tǒng)和程序的定期備份和追溯,按時間記錄當(dāng)天、一周前、一個月前等的記錄和回放以及快照存儲、增量備份、冗余刪除等[8]。管理員快照操作的權(quán)限如圖4所示.

004.jpg

4  測試與結(jié)果

  4.1 測試環(huán)境

  搭建測試環(huán)境包括硬件環(huán)境和軟件環(huán)境。

  硬件環(huán)境:CPU: 至少2GHz,內(nèi)存:至少需要1GMB的內(nèi)存,硬盤空間:至少需要2GMB磁盤空間,監(jiān)視器:圖形界面安裝需要256色,字符界面安裝沒有色彩要求,瀏覽器:Microsoft IE7或Firefox3.0及以上版本。軟件環(huán)境:JDK1.6,開發(fā)IDE工具:Eclipse 4.4、Maven 3.0.2,操作系統(tǒng):Windows 7,數(shù)據(jù)庫:mySQL 5.2,中間件:Jboss 7.1.1 Final。

  4.2 數(shù)據(jù)庫恢復(fù)結(jié)果

  首先安裝開發(fā)測試Java環(huán)境,搭建maven(Jboss的構(gòu)建方式)工程,在standalone模式下啟動Jboss集群,創(chuàng)建Mysql數(shù)據(jù)庫,并創(chuàng)建測試數(shù)據(jù)??蛻舳颂砑尤罩尽H缓?,突然關(guān)閉應(yīng)用服務(wù)器,模擬服務(wù)器故障,數(shù)據(jù)庫數(shù)據(jù)斷電丟失。重新開機啟動交易恢復(fù)模塊,數(shù)據(jù)庫數(shù)據(jù)恢復(fù)成功。數(shù)據(jù)恢復(fù)前界面如圖4,恢復(fù)成功后界面如圖5。

005.jpg

  4.3 快照回放和刪除

  快照回放,根據(jù)快照記錄恢復(fù)歷史狀態(tài)下的系統(tǒng)或程序。刪除功能可以刪除歷史快照。功能顯示如圖7所示。

006.jpg

  4.4 日志下載查詢

  管理用戶可以通過網(wǎng)絡(luò)遠(yuǎn)程對收到的日志文件進行查詢,同時提供下載。

  對于后臺日志10 min建立一個文件,如果一次只能看10 min的內(nèi)容,將會很不方便,因此系統(tǒng)提供可以跨時間段的多文件查詢。日志下載界面如圖8所示。

007.jpg

  5 結(jié)束語

  通過實驗和測試得出了該中間件產(chǎn)品能夠?qū)崿F(xiàn)預(yù)期功能,經(jīng)測試后的性能指標(biāo)能夠滿足目前云平臺和設(shè)計要求。具體指標(biāo)參數(shù)見表2。

009.jpg

  為提高云計算平臺數(shù)據(jù)(災(zāi)備)中心的高可用(靠)性,應(yīng)用中間件對應(yīng)用提供自我恢復(fù)的能力管控,即知道應(yīng)用是否有問題,以及支撐的Java容器是否出現(xiàn)故障,對出現(xiàn)問題的應(yīng)用進程和組件提供分析、恢復(fù)、重啟的能力??梢愿鶕?jù)不同的定制策略,選擇性重新啟動恢復(fù)。并對數(shù)據(jù)(災(zāi)備)中心建設(shè)提供了安全的基礎(chǔ)應(yīng)用軟件支持。

參考文獻:

  [1]姜可.淺析企業(yè)數(shù)據(jù)災(zāi)備系統(tǒng)的建設(shè)[J].計算機光盤軟件與應(yīng)用,2013(1):111-112.

  [2]馮揚 云安全技術(shù)研究.電力信息與通信技術(shù)[J]. 2014,12(1).

  [3]魏勇,張權(quán).中間件技術(shù)研究[J].電子技術(shù)應(yīng)用,2004,30(11):1-4.

  [4]李捷.基于SOA應(yīng)用JMX和JMS技術(shù)的RFID中間件設(shè)計[J].電子技術(shù)應(yīng)用,2010,36(4):119-122.

  [5]陳莉君,康華,賈威威.云存儲日志文件系統(tǒng)中快照的設(shè)計與實現(xiàn)[J].計算機應(yīng)用與軟件,2013,30(7):205-208.

  [6]周煒,譚懷亮,易樂天.基于帶外存儲虛擬化的邏輯卷高性能快照[J].計算機研究與發(fā)展,2012,49(3):637-643.

  [7]陽小珊,朱立谷,羅洪元.IP網(wǎng)絡(luò)存儲的日志系統(tǒng)研究[J].計算機研究與發(fā)展,2011,48(z1):366-369.

  [8]趙志恒,羅宇.基于細(xì)粒度快照的遠(yuǎn)程容災(zāi)系統(tǒng)的設(shè)計與實現(xiàn)[J].計算機工程與科學(xué),2008,30(7):151-154.


此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。