国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于AOP的Web服務(wù)容錯技術(shù)研究

2016-12-01 07:35董翔宇
數(shù)字通信世界 2016年1期
關(guān)鍵詞:WEB服務(wù)日志備份

董翔宇

(中國人民解放軍海軍工程大學(xué),武漢 430033)

基于AOP的Web服務(wù)容錯技術(shù)研究

董翔宇

(中國人民解放軍海軍工程大學(xué),武漢 430033)

為了提供更優(yōu)質(zhì)的Web服務(wù),本文提出了基于AOP的Web服務(wù)容錯模型,使用AOP作為實現(xiàn)服務(wù)過程與切面融合的手段,將容錯關(guān)注點從功能性關(guān)注點中分離并織入到Web服務(wù)流程中,利用AOP技術(shù)將橫切關(guān)注點與核心關(guān)注點統(tǒng)一架構(gòu)的方法,保證核心模塊的高度封裝性。本文設(shè)計了一個演示系統(tǒng),綜合了地圖、天氣和查詢訂票服務(wù),并根據(jù)服務(wù)的特性構(gòu)建了主從容錯、緩存容錯、重試容錯、日志容錯四種不同容錯方式。

關(guān)鍵詞:Web服務(wù);AOP;容錯;備份;緩存;重試;日志

1 引言

實現(xiàn)即時查詢同時整合多種服務(wù),并且通過容錯方式提高服務(wù)的可靠性,是互聯(lián)時代的新特點。容錯機制主要分為冗余、故障檢測與恢復(fù)、替代與補償[1],設(shè)計容錯系統(tǒng)要對系統(tǒng)需求、設(shè)計實現(xiàn)和應(yīng)用開發(fā)加以構(gòu)建。近年來,國內(nèi)外學(xué)者基于三種機制提出了許多容錯規(guī)范和方法。Ko[2]提出了自適應(yīng)的面向位置敏感的環(huán)境下的容錯算法;卡耐基梅隆大學(xué)的文件存取服務(wù)Coda[3]通過復(fù)制服務(wù)器技術(shù)進(jìn)行故障恢復(fù)。AOP是一種基于橫切關(guān)注點分離的技術(shù),將橫切關(guān)注點單獨建模并織入到系統(tǒng)中,通過構(gòu)建切面,確定連接點和切入點將對象織入系統(tǒng)中。本文以用戶經(jīng)常用到的地圖、天氣等查詢服務(wù)為背景,基于AOP實現(xiàn)Web服務(wù)的容錯編程,通過對服務(wù)器的可用性鑒別,進(jìn)行監(jiān)測攔截并實現(xiàn)容錯功能,最終建立了基于AOP的容錯演示系統(tǒng)。

2 Web服務(wù)容錯方式

主從容錯在系統(tǒng)監(jiān)測上利catch/try方法,在系統(tǒng)運行進(jìn)行類成員訪問時會被OnInvoke方法攔截并跳轉(zhuǎn)到容錯Aspect上,當(dāng)系統(tǒng)運行良好,所有的信息直接由主結(jié)點處理,當(dāng)出現(xiàn)異常時自動執(zhí)行catch語句,在該容錯中將從服務(wù)器替換主服務(wù)器。Retry(S,number,interval):S代表當(dāng)前服務(wù),number代表重試次數(shù),interval代表重試時間間隔,重試容錯在服務(wù)S異常時重復(fù)調(diào)用直到其成功或達(dá)到指定條件,進(jìn)而對服務(wù)異常進(jìn)行恢復(fù)[4]。Cache技術(shù)實現(xiàn)對信息的暫存,方便在服務(wù)發(fā)生故障時及時從Cache中調(diào)用,用戶可設(shè)定Cache緩存時間,在這段時間里緩存數(shù)據(jù)放在Cache中,當(dāng)用戶查詢的內(nèi)容在Cache中存在時,可直接進(jìn)行調(diào)用從而減少訪問服務(wù)器這一過程。Logging作為一種存檔文件解決了系統(tǒng)錯誤備份恢復(fù)問題,本文利用日志容錯記錄系統(tǒng)運行初始、結(jié)束時間和運行狀態(tài),并且一旦出錯會記錄出錯時間和異常信息。

3 基于AOP的Web服務(wù)模型建立

3.1 基于AOP的容錯設(shè)計

本文利用面向方面編程方法,對AOP架構(gòu)進(jìn)行拆分并模塊化,進(jìn)而對每一模塊分析設(shè)計,最后進(jìn)行重組。將每一個容錯類型做成一個Aspect,本文總共有主從容錯(BackupAttribute)、重試容錯(RetryAttribute)、緩存容錯(CatchAttribute)和日志容錯(LoggingAttribute)四個方面,同時利用try/catch語句進(jìn)行捕捉錯誤,一旦發(fā)生異常利用OnInvoke方法攔截切入并織入容錯機制。

圖1 錯誤恢復(fù)主從容錯模型

橫切在連接點處,共有4個連接點,其作用時機略有不同,當(dāng)被調(diào)用時,cache,backup,retry容錯會自動攔截核心關(guān)注點的類成員訪問,實現(xiàn)編譯期織入的過程,而logging容錯一旦被調(diào)用則不需要攔截機制,從方法開始到結(jié)束都會跟蹤記錄。下面利用錯誤恢復(fù)Aspect模型進(jìn)行詳細(xì)介紹。

如圖1所示,類WeatherServes有若干屬性和方法,我們定義了名為BackupAttribute的Aspect進(jìn)行錯誤恢復(fù),在BackupAttribute中由于是靜態(tài)橫切所以連接點的調(diào)用時機是攔截查詢天氣方法(GetWeatherInfo),由于BackupAttribute繼承了MethodInterceptionAspect類,故與該容錯方式相對應(yīng)的通知使用的是before的橫切規(guī)則,before在切入點前執(zhí)行橫切行為,eventArgs. Proceed方法的實質(zhì)是連接點指向方法的別名,此處使用方法調(diào)用的目的是在將主從容錯方法放入try/catch語句塊中,以捕獲Exception異常,event Args.Proceed方法此處即是主從容錯方法的別名,當(dāng)系統(tǒng)發(fā)現(xiàn)遠(yuǎn)程服務(wù)無響應(yīng)并拋出Exception異常時,容錯機制執(zhí)行catch中語句,將從服務(wù)器替換主服務(wù)器,進(jìn)而重新調(diào)用服務(wù)查詢。同時,4處虛線說明實現(xiàn)容錯Aspect有4個連接點,而本例中只對主從備份容錯進(jìn)行介紹,除了BackupAttribute外CatchAttribute,RetryAttribute,Logging Attribute都構(gòu)成切面。其中,CatchAttribute和RetryAttribute都是采用判斷的方式,構(gòu)建出系統(tǒng)異常情況的處理辦法,RetryAttribute錯誤恢復(fù)仍采用try/catch語句,一旦發(fā)生異常等待一段時間后重試,這將在catch語句中實現(xiàn);Catch Attribute判斷系統(tǒng)的cache中是否保留過用戶查詢的信息,如果存在則直接調(diào)用。Logging Attribute繼承了類MethodBoundaryAspect,采用around橫切規(guī)則,around是三種橫切規(guī)則中功能最強大的,它既可以在切入點前后執(zhí)行橫切行為,也可以替代切入點執(zhí)行橫切行為,同時它可以在后臺記錄下系統(tǒng)運行情況,提供給用戶進(jìn)行分析記錄。

3.2 容錯策略

在容錯策略上對每個Aspect進(jìn)行編碼,當(dāng)調(diào)用主從容錯時,BackupAttribute在連接點進(jìn)行橫切織入,對服務(wù)進(jìn)行異常判斷,選擇是否將從容錯替換主容錯。當(dāng)調(diào)用重試容錯時,RetryAttribute在連接點處進(jìn)行橫切織入,我們在Aspect編程中使用了While語句,將用戶設(shè)定的重試次數(shù)和間隔傳送到循環(huán)語句中,并在捕捉異常情況時,進(jìn)行循環(huán)重試。當(dāng)調(diào)用緩存容錯時,根據(jù)最終查詢的服務(wù)類別會在系統(tǒng)的不同區(qū)域申請內(nèi)存空間,之后建立一個cache參數(shù)key作為檢查內(nèi)存中是否保存曾經(jīng)的查詢信息。當(dāng)調(diào)用日志容錯時,在程序出現(xiàn)異常時跳轉(zhuǎn)到OnException方法上,輸出異常的時刻,異常信息等,當(dāng)服務(wù)結(jié)束,在程序出口處會記錄執(zhí)行結(jié)束信息。

圖2 訂票服務(wù)

4 容錯的實現(xiàn)

在實現(xiàn)界面上,我們介紹采用日志容錯技術(shù)的查詢訂票服務(wù),系統(tǒng)中容錯機制進(jìn)行跟蹤狀態(tài)和記錄變量值,以便于在發(fā)生錯誤時準(zhǔn)確的恢復(fù)到原來狀態(tài)。由圖2可以清晰看到,出現(xiàn)錯誤時,系統(tǒng)會自動恢復(fù)到上一狀態(tài),即退還用戶金額?!?/p>

[1] 歐陽建權(quán),王懷民,史殿習(xí).普適計算的可信研究[J].計算機應(yīng)用研究,2008.15(12):111-132

[2] Koen. An adaptive fault tolerance for situation aware ubiquitous computing[C].Washington DC:IEEE Computer Society,2005:144-149.

[3] Bram P J. The Coda distributed file system[J].Linux Journa1,1998.50(6):10-20.

[4] 夏永霖.復(fù)合服務(wù)自恢復(fù)關(guān)鍵技術(shù)研究[D].中國科學(xué)技術(shù)大學(xué),2010:19-20

CCBN2016產(chǎn)品創(chuàng)新獎初評會在京舉行

作為2016年度C C BN展覽會重磅打造的行業(yè)創(chuàng)新活動——“CCBN2016產(chǎn)品創(chuàng)新獎”初評工作會議于2016年1月9日在北京召開。

CCBN2016產(chǎn)品創(chuàng)新獎評選活動于2015年11月正式啟動,共收到參評產(chǎn)品與技術(shù)方案近200余項,歷經(jīng)嚴(yán)格的資料遞送審核及評審工作,得到了來自行業(yè)技術(shù)企業(yè)及專家評委的肯定與支持。來自中央人民廣播電臺、中國國際廣播電臺、中央電視臺、中國網(wǎng)絡(luò)電視臺、中國廣播電視網(wǎng)絡(luò)有限公司、廣電總局監(jiān)管中心、廣電總局廣播電視衛(wèi)星直播管理中心、廣播科學(xué)研究院、廣播電視規(guī)劃院、電影技術(shù)質(zhì)量檢測所、中廣電廣播電影電視設(shè)計院、中國傳媒大學(xué)等14位行業(yè)專家組成評審專家組參與了評選工作,國家新聞出版廣電總局科學(xué)技術(shù)委員會副主任杜百川先生主持會議。專家組通過產(chǎn)品展示、分組評分、討論復(fù)議等環(huán)節(jié),本著公開、公平、公正的原則,最終評選出制作與播出、傳輸與覆蓋、業(yè)務(wù)平臺與終端、融合媒體四大類共55項產(chǎn)品入圍。

據(jù)悉,CCBN2016產(chǎn)品創(chuàng)新獎復(fù)評會將于1月23日在北京召開,復(fù)評會將最終評選出CCBN2016產(chǎn)品創(chuàng)新獎獲獎產(chǎn)品,獲獎結(jié)果將于2016年3月23日CCBN主題報告會期間在北京國際會議中心揭曉并舉行頒獎典禮。

2016年是“十三五”規(guī)劃第一年,十八屆五中全會重點研究制定了國家的“十三五”規(guī)劃,指出經(jīng)濟(jì)發(fā)展仍是第一要務(wù),要推動創(chuàng)新,突出市場在資源配置中的決定性作用。2016年CCBN年度產(chǎn)品創(chuàng)新獎將深入貫徹落實黨的十八大五中全會精神,緊扣廣播影視技術(shù)“創(chuàng)新、融合、發(fā)展”的行業(yè)格局,挖掘和表彰優(yōu)秀創(chuàng)新產(chǎn)品和企業(yè),促進(jìn)廣播電視行業(yè)快速發(fā)展。

Web Services Fault-tolerant Technology Research Based AOP

Dong Xiangyu
(Naval University of Engineering, PLA, Wuhan, 430033)

We put forward the model of Web Services fault-tolerance based on the AOP so as to provide better Web Services. It was used for the entire service implementation procedure and the fusion of sections , detaching fault-tolerant concerns from functional attention and woven into a Web service in the process. The high-level encapsulation of core module is ensured by the AOP, which construct the transverse concerns and core concerns. We designed a demonstration system, composed of the service of maps, weather and booking query. According to the characteristics of service, four ways of fault-tolerance are set up, including master-slave model, cache, retry model and logging.

Web Service; AOP; Fault-tolerance; Backup; Cache; Retry; Logging

10.3969/J.ISSN.1672-7274.2016.01.008

TP31

A

1672-7274(2016)01-0034-03

猜你喜歡
WEB服務(wù)日志備份
“備份”25年:鄧清明圓夢
一名老黨員的工作日志
扶貧日志
創(chuàng)建vSphere 備份任務(wù)
游學(xué)日志
基于Web服務(wù)的SPSS與.NET系統(tǒng)集成開發(fā)
基于線性回歸的航班延誤預(yù)測研究與系統(tǒng)開發(fā)
舊瓶裝新酒天宮二號從備份變實驗室
教學(xué)工作量管理系統(tǒng)的設(shè)計與實現(xiàn)
一種基于SOA的web異構(gòu)數(shù)據(jù)集成方法研究