一种面向MVC架构下Web系统的分级自恢复方法

文档序号:7756281阅读:339来源:国知局
专利名称:一种面向MVC架构下Web系统的分级自恢复方法
技术领域
本发明涉及的是一种Web系统的自恢复方法。
背景技术
Web系统在网络应用中发挥着重要的作用,从金融到娱乐,从教育到行政,Web 系统服务于人们的工作和生活,并以其强大的功能使人们的工作更加便利高效,生活更 加丰富多彩。然而,随着Web系统越来越为人们所依赖,其安全性与生存能力也正经受 着严峻的考验,这一方面是由于Web系统自身功能的增强而导致的其结构越来越复杂, 另一方面则是由于黑客对Web系统的攻击。由于这些安全隐患给Web系统带来的潜在威 胁几乎是不可避免的,而人们对Web系统的安全运行的要求却并没有降低,因此,如何 使Web系统从故障中快速恢复已成为学术界与业界的关注重点。系统恢复的方法有很多,当前,针对计算机系统、操作系统、文件系统以及数 据存储系统等均有很多很好的恢复方法,这些恢复方法在恢复系统的同时,还极大地提 高了系统的健壮性、安全性和生存性。然而,专门针对Web系统、特别是目前最流行 的 MVC 架构下的 Web 系统(如 Apache 的 Struts 框架、ASP.NET MVC Framework 以 及Sun的JSF等)的恢复方法却并不多。在这些方法中,比较有代表性的是《JAGR: An AutonomousSelf-Recovering Application Server》(Proceedings of the Autonomic Computing Workshop.Fifth Annual International Workshop on Active Middleware Services. AMS2003, ρ 168-77)(译《JAGR 一种自治自恢复的应用服务器》(自律计算会议第 五次关于现役中间件国际会议。AMS2003,168-77页))这篇文章中所提出的基于重启技 术的恢复方法,但是,JAGR文章中提出的方法要求修改jboss服务器(一种开源的J2EE 应用服务器),且只对部署于jboss服务器的java应用程序有效,这就使得它不具有普遍 的适用性,另外,这种恢复方式仅仅是采用重启技术对系统进行恢复,而且重启也同样 要依赖jboss服务器的特性来实施,这种相对单一的恢复方式是无法解决诸如文件丢失或 被恶意修改等硬性故障的,而这些故障对于当今的Web系统来说,却是非常普遍的。

发明内容
本发明的目的在于提供一种能减少恢复时间,降低恢复成本,增强MVC架构下 Web系统安全性与生存性的面向MVC架构下Web系统的分级自恢复方法。本发明的目的是这样实现的(1)将目标系统的自恢复等级由高到低划分为用户请求级、组件调用级和组件内 部服务级;(2)在目标系统的控制层即C层,建立一个请求控制器、一个或多个插拔控制器 和一个故障分析和决策器;(3)在目标系统的模型层即M层,为每个业务逻辑处理组件的内部子组件分别 建立一个重启控制器,使这些业务逻辑处理组件变成可自恢复的组件,并为每个业务逻辑处理组件分别建立一个与之完全相同的备份组件; (4)用户发送请求时,在web服务器端,请求控制器屏蔽该请求,对请求信息做 处理后,选择并调用能实现该请求的插拔控制器执行请求;(5)插拔控制器接收到请求后,根据请求信息,选择并调用模型层中能实现该请 求的可自恢复的业务逻辑处理组件执行请求;(6)如果调用成功,转步骤⑶;如果调用失败,转步骤(7);(7)插拔控制器通过热插拔的方式调用模型层中与出现问题的组件匹配的备份组 件来重新执行请求,然后转步骤(8);(8)在被调用的业务逻辑组件中,重启控制器屏蔽调用请求,根据请求信息,选 择并调用能实现该请求的子组件来执行请求;(9)子组件执行请求,若执行成功,向调用它的重启控制器返回用于转发的对象 即转发对象,再由重启控制器将转发对象返回给插拔控制器,转步骤(12);若执行中 遇到故障,子组件将故障信息发送至调用它的重启控制器,然后转步骤(10);(10)重启控制器收到故障信息,判断其所调用的子组件的重启次数,若未超过 限定次数,将故障信息发送至故障分析和决策器,转步骤(11);若超过限定次数,不对 故障进行处理,将故障信息转发给插拔控制器,转步骤(12);(11)故障分析和决策器接收到重启控制器发送的故障信息,检索重启级故障 表,若与故障信息对应的处理措施为“重启”或未检索到相应的故障信息,将处理措施 即重启处理返回给重启控制器,由重启控制器重启子组件,再次尝试执行请求,转步骤 (9);否则,将处理措施即不重启返回给重启控制器,再由重启控制器将故障信息转发给 插拔控制器,转步骤(12);(12)插拔控制器接收其所调用的下层业务逻辑处理组件的返回结果,若接收到 的是成功执行后的转发对象,则将转发对象返回给请求控制器,转步骤(15);若接收到 的是故障信息,转步骤(13);(13)插拔控制器判断其所调用的可插拔的业务逻辑处理组件的插拔次数,若未 超过限定次数,将故障信息发送至故障分析和决策器,转步骤(14);若超过限定次数, 则不对故障进行处理,将故障信息转发给请求控制器,转步骤(15);(14)故障分析和决策器接收到插拔控制器发送的故障信息,检索插拔级故障 表,若与故障信息对应的处理措施为“插拔”或未检索到相应的故障信息,将处理措施 即插拔处理返回给插拔控制器,由插拔控制器对出现故障的组件进行热插拔,然后重新 调用业务逻辑处理组件执行请求,转步骤(6);否则,将处理措施即不插拔返回给插拔 控制器,再由插拔控制器将故障信息转发给请求控制器,转步骤(15);(15)请求控制器接收其所调用的插拔控制器的返回结果,若接收到的是成功执 行后的转发对象,则将转发对象发送至用于转发的组件,转步骤(18);若接收到的是故 障信息,转步骤(16);(16)请求控制器运用耗时决策算法判断从用户提交请求至请求控制器捕获故障 信息的耗时,若未超过限定的用户可容忍的时间,则将故障信息发送至故障分析和决策 器,转步骤(17);若超过限定的用户可容忍的时间,则不对故障进行处理,并将转发对 象指定到出错提示界面,然后将转发对象发送至用于转发的组件,转步骤(18);
(17)故障分析和决策器接收到请求控制器发送的故障信息,检索请求级故障 表,若与故障信息对应的处理措施为“重发请求”或未检索到相应的故障信息,将处理 措施即重发请求返 回给请求控制器,由请求控制器重新对请求信息做处理后,选择并调 用能实现该请求的插拔控制器执行请求。转步骤(5);否则,将处理措施即不重发请求 返回给请求控制器,并由请求控制器将转发对象指定到出错提示界面,然后将此对象发 送至用于转发的组件,转步骤(18);(18)用于转发的组件接收到请求控制器发送的转发对象,对转发对象做必要的 处理,最后转发请求。本发明是根据MVC架构下Web系统的结构特点和工作流程所提出的分级自恢复 方法。由于MVC模型将视图和业务逻辑分离,并且复杂的业务逻辑处理组件均位于模型 层,而由于这些组件自身的复杂性及其所依赖的复杂多变的环境因素,它们通常是最容 易产生故障的部分,所以,本发明将系统最可能产生故障的“故障产生点”主要集中在 这些功能复杂的业务逻辑处理组件上,并且采用不同的恢复方式(由低到高依次是重 启子组件、热插拔业务逻辑处理组件及重发用户请求)对系统进行逐级的恢复。若低级 别的恢复方式能够解决故障,则不需要高级的恢复方式,否则将尝试更高级别的恢复方 式来处理故障。对于每种恢复级别,等级越高,恢复代价越大,但恢复能力也更强。能够使用本方法的MVC架构下Web系统应具有如图1所示的体系结构。包括 一个请求控制器,一个或多个插拔控制器(其个数由业务逻辑处理组件的个数决定),带 有重启控制器的业务逻辑处理组件及其备份组件以及一个故障分析和决策器。接下来对 各部分进行详细的说明。请求控制器请求控制器位于MVC模型的控制层,是高级的恢复控制器。系 统正常运行阶段,它屏蔽并转发用户的调用请求;系统恢复阶段,它被动捕获下层插拔 控制器发送的故障信息,并通过重发用户请求的方式进行用户请求级的系统恢复。插拔控制器插拔控制器位于MVC模型的控制层,是中级的恢复控制器。系 统正常运行阶段,它接收请求控制器的调用请求,然后选择能实现该请求的业务逻辑处 理组件执行请求;系统恢复阶段,它通过热插拔的方式,选择备份组件代替出现故障的 组件来执行请求以实现组件调用级的系统恢复,若无法恢复,则将故障信息转发给请求 控制器。业务逻辑处理组件和重启控制器业务逻辑处理组件位于MVC模型的模型层, 它通常由处理不同业务的若干子组件组成,每个子组件均有对应的重启控制器。系统正 常运行阶段,重启控制器屏蔽并转发插拔控制器的调用请求给其所控制的子组件,系统 恢复阶段,重启控制器通过重启子组件的方式实现组件内部服务级的系统的恢复,若无 法恢复,则将故障信息转发给调用它的插拔控制器。备份组件在MVC模型的模型层,每个业务逻辑处理组件均有与之匹配的备份 组建,备份组件与原组件的结构和功能完全相同,备份组件用于原组件出现故障时的组 件调用级的系统自恢复。故障分析和决策器故障分析和决策器位于MVC模型的控制层,它是三级恢 复均要使用的依赖组件。故障分析和决策器可以接收请求控制器、插拔控制器和重启控 制器所发送的故障信息,对故障信息进行分析后,再将得出的处理措施返回给各个控制器。在故障分析和决策器中维护着请求级故障表、插拔级故障表和重启级故障表三张故 障分析和决策用表,这三张表中记录着故障信息和其所对应的处理措施,故障分析和决 策器可以通过检索这三张表来得出每种故障的处理措施。与现有的针对Web系统的恢复方法相比,本发明的优点在于(1)针对所有的 MVC架构下的Web系统提出恢复方法,不仅针对性强,而且具有普遍的适用性;(2)采 用分级的恢复策略,并且针对不同级别提出代价和强度不同的恢复措施,即可有效降低 恢复的成本,又可提高恢复的能力;(3)将主要的“故障产生点”(但并不局限于此)集 中在复杂的业务逻辑处理组件上,具有更强的故障针对性;(4)实验表明,本方法可使 MVC架构下的Web系统具有更好的安全性和生存性。


图1为应用本发明的MVC架构下Web系统的体系结构图。图2为本发明的系统恢复流程图。
具体实施例方式下面结合附图举例对本发明做更详细地描述结合图2,本发明的面向MVC架构下Web系统的分级自恢复方法的工作流程如 下(1)将目标系统的自恢复等级由高到低划分为用户请求级、组件调用级和组件内 部服务级;(2)在目标系统的控制层即C层,建立一个请求控制器、一个或多个插拔控制器 和一个故障分析和决策器;(3)在目标系统的模型层即M层,为每个业务逻辑处理组件的内部子组件分别 建立一个重启控制器,使这些业务逻辑处理组件变成可自恢复的组件,并为每个业务逻 辑处理组件分别建立一个与之完全相同的备份组件;(4)用户发送请求时,在Web服务器端,请求控制器屏蔽该请求,对请求信息做 处理后,选择并调用能实现该请求的插拔控制器执行请求;(5)插拔控制器接收到请求后,根据请求信息,选择并调用模型层中能实现该请 求的可自恢复的业务逻辑处理组件执行请求;(6)如果调用成功,转步骤⑶;如果调用失败,转步骤(7);(7)插拔控制器通过热插拔的方式调用模型层中与出现问题的组件匹配的备份组 件来重新执行请求,然后转步骤(8);(8)在被调用的业务逻辑组件中,重启控制器屏蔽调用请求,根据请求信息,选 择并调用能实现该请求的子组件来执行请求;(9)子组件执行请求,若执行成功,向调用它的重启控制器返回用于转发的对象 即转发对象,再由重启控制器将转发对象返回给插拔控制器,转步骤(12);若执行中 遇到故障,子组件将故障信息发送至调用它的重启控制器,然后转步骤(10);(10)重启控制器收到故障信息,判断其所调用的子组件的重启次数,若未超过 限定次数,将故障信息发送至故障分析和决策器,转步骤(11);若超过限定次数,不对故障进行处理,将故障信息转发给插拔控制器,转步骤(12); (11)故障分析和决策器接收到重启控制器发送的故障信息,检索重启级故障 表,若与故障信息对应的处理措施为“重启”或未检索到相应的故障信息,将处理措施 即重启处理返回给重启控制器,由重启控制器重启子组件,再次尝试执行请求,转步骤 (9);否则,将处理措施即不重启返回给重启控制器,再由重启控制器将故障信息转发给 插拔控制器,转步骤(12);(12)插拔控制器接收其所调用的下层业务逻辑处理组件的返回结果,若接收到 的是成功执行后的转发对象,则将转发对象返回给请求控制器,转步骤(15);若接收到 的是故障信息,转步骤(13);(13)插拔控制器判断其所调用的可插拔的业务逻辑处理组件的插拔次数,若未 超过限定次数,将故障信息发送至故障分析和决策器,转步骤(14);若超过限定次数, 则不对故障进行处理,将故障信息转发给请求控制器,转步骤(15);(14)故障分析和决策器接收到插拔控制器发送的故障信息,检索插拔级故障 表,若与故障信息对应的处理措施为“插拔”或未检索到相应的故障信息,将处理措施 即插拔处理返回给插拔控制器,由插拔控制器对出现故障的组件进行热插拔,然后重新 调用业务逻辑处理组件执行请求,转步骤(6);否则,将处理措施即不插拔返回给插拔 控制器,再由插拔控制器将故障信息转发给请求控制器,转步骤(15);(15)请求控制器接收其所调用的插拔控制器的返回结果,若接收到的是成功执 行后的转发对象,则将转发对象发送至用于转发的组件,转步骤(18);若接收到的是故 障信息,转步骤(16);(16)请求控制器运用耗时决策算法判断从用户提交请求至请求控制器捕获故障 信息的耗时,若未超过限定的用户可容忍的时间,则将故障信息发送至故障分析和决策 器,转步骤(17);若超过限定的用户可容忍的时间,则不对故障进行处理,并将转发对 象指定到出错提示界面,然后将转发对象发送至用于转发的组件,转步骤(18);(17)故障分析和决策器接收到请求控制器发送的故障信息,检索请求级故障 表,若与故障信息对应的处理措施为“重发请求”或未检索到相应的故障信息,将处理 措施即重发请求返回给请求控制器,由请求控制器重新对请求信息做处理后,选择并调 用能实现该请求的插拔控制器执行请求。转步骤(5);否则,将处理措施即不重发请求 返回给请求控制器,并由请求控制器将转发对象指定到出错提示界面,然后将此对象发 送至用于转发的组件,转步骤(18);(18)用于转发的组件接收到请求控制器发送的转发对象,对转发对象做必要的 处理,最后转发请求。本发明是根据MVC架构下Web系统的结构特点和工作流程所提出的分级自恢复 方法。能够使用本方法的MVC架构下Web系统应具有如图1所示的体系结构。包括 一个请求控制器,一个或多个插拔控制器,带有重启控制器的业务逻辑处理组件及其备 份组件以及一个故障分析和决策器。下面,以典型的MVC模型——Struts框架——来说明各部分的实现方式,对于 其他的MVC模型,如ASP.NET MVC Framework等的实现方式,与此原理类似。(1) Struts框架下Web系统实现请求控制器的部分代码如下
//processActionPerform为示例中假定的请求控制器的名称protected ActionForward processA ctionPerform (HttpServletRequest request,HttpServletResponse response,Action action,ActionForm form,ActionMapping mapping) throws IOException, ServletException {……//对环境做重新配置的代码……//对请求做重新处理的代码//转发对象ActionForward af = null ;while (true) {try{//选择并调用业务逻辑和插拔处理器执行请求af = action.execute (mapping, form,request, response);//成功执行后返回return af ;}catch (Exception e) {//捕获到故障时//获取当前时刻,用于判断是否超过用户容忍时间endTime = System.currentTimeMillis 0 ;//如果未超过用户容忍时间if( ! isTimeOut (endTime)){FailureAnalysisDecision fad = new FailureAnalysisDecision ();if (fad.whetherResend (e)) {// 如果经决策需要重发……H重新配置请求和网络环境的代码continue ;}elSe{//否则,将af指定到适当的错误提示页面,返回af = new ActionForward O ;af.setPath (“ /mysorry.jsp “);return af ;}}else{//否则,将af指定到适当的错误提示页面,返回af = new ActionForward O ;af.setPath (〃 /mysorry.jsp “);return af }}
}}(2) Struts框架下Web系统实现插拔控制器的部分代码如下//login为示例中假定的插拔控制器名称public ActionForward login (ActionMapping mapping,
ActionForm form,HttpServletRequest request,
HttpServletResponse response)throws Exception {H已经插拔得次数int HotSwapTimes = O ;//转发对象ActionForward af = null ;//选择模型层中的可自愈组件(如service,它为类中定义的类变量)if (service ! = null) {service = null ;}//先检查.class文件是否有问题(如被恶意修改或者不存在等)if( ! hasFailures O) {H如果没有问题,创建组件对象(假定为MemServiceImpl)service = new MemServiceImpl ();}else{//否则,如果有问题,加载备分的组件(class文件)并用其创建对象service = new MemServicelmplSwap 0 ;}//执行请求while (true) {try{//将请求发送给模型层中的可自愈组件,IoginImpl为发送用方法af = this.loginlmpl (mapping, form, request, response);//成功执行后返回return af ;} catch (Exception e) {//捕获到故障时if ( ! isSwapBeyonded 0) {//如果没有超过限定插拔次数FailureAnalysisDecision fad = new FailureAnalysisDecision ();if (fad.whetherSwap (e)) {// 如果经决策需要插拔//修改插拔次数HotSwapTimes++ ;
service = null ;H 对 MemServiceImpl 进行插拔Il类MyClassLoader的IoadClass O方法用于动态加载类MyClassLoader myClassLoader = new MyClassLoader ();try{service = (MemServiceImpl) myClassLoader.loadClass (...) /1...
为 MemServicelmpl.class 文件的 URL 地址}catch (Exception le) {// 如果加载时遇到故障,Il加载备分的组件(class文件)并用其创建对象service = new MemServicelmplSwap 0 ;}//插拔后,再次执行方法continue ;}else{//否则,将故障信息发送给请求控制器throw e ;}}else{//如果超过限定插拔次数,将故障信息发送给请求控制器throw e ;}}}}(3) Struts框架下Web系统实现重启控制器的部分代码如下//memLogin为示例中假定的重启控制器名称,Member为其返回类型public Member memLogin (String IoginName,String IoginPwd)
throws Exception!//应经重启的次数int rebootTimes = O ;//子组件的返回值Member mem = null ;while (true) {try{H调用可自愈组件内的子组件执行实际的操作mem = this.memLoginlmpl (loginName,IoginPwd);//正常执行后返回return mem ;}catch (Exception e) {//捕获到 故障时
if ( ! isRebootBeyonded0) {//如果没有超过限定重启次数FailureAnalysisDecision fad = new FailureAnalysisDecision ();if (fad. whetherReboot (e)) {// 如果经决策需要重启//修改重启次数rebootTimes++ ;Il重新调用子组件执行操作continue ;}else{//否则,将故障信息发送给插拔控制器throw e ;}}else{//如果超过限定重启次数,将故障信息发送给插拔控制器throw e ;}}}} (4)对于Struts框架下的Web系统,在故障分析和决策器中,一种较好的故障分 析和决策用表(请求级故障表、插拔级故障表和重启级故障表)的设计方式是以XML文 件作为其载体,服务器启动时加载这些XML文件,然后将其与集合对象关联,这种方式 不仅增强了对故障分析和决策用表进行维护的灵活性,便于其修改或更新,同时还可加 快其访问的速度,从而降低整个Web系统恢复的时间。
权利要求
1. 一种面向MVC架构下Web系统的分级自恢复方法,其特征是(1)将目标系统的自恢复等级由高到低划分为用户请求级、组件调用级和组件内部服 务级;(2)在目标系统的控制层即C层,建立一个请求控制器、一个或多个插拔控制器和一 个故障分析和决策器;(3)在目标系统的模型层即M层,为每个业务逻辑处理组件的内部子组件分别建立 一个重启控制器,使这些业务逻辑处理组件变成可自恢复的组件,并为每个业务逻辑处 理组件分别建立一个与之完全相同的备份组件;(4)用户发送请求时,在Web服务器端,请求控制器屏蔽该请求,对请求信息做处理 后,选择并调用能实现该请求的插拔控制器执行请求;(5)插拔控制器接收到请求后,根据请求信息,选择并调用模型层中能实现该请求的 可自恢复的业务逻辑处理组件执行请求;(6)如果调用成功,转步骤(8);如果调用失败,转步骤(7);(7)插拔控制器通过热插拔的方式调用模型层中与出现问题的组件匹配的备份组件来 重新执行请求,然后转步骤(8);(8)在被调用的业务逻辑组件中,重启控制器屏蔽调用请求,根据请求信息,选择并 调用能实现该请求的子组件来执行请求;(9)子组件执行请求,若执行成功,向调用它的重启控制器返回用于转发的对象即 转发对象,再由重启控制器将转发对象返回给插拔控制器,转步骤(1 ;若执行中遇到 故障,子组件将故障信息发送至调用它的重启控制器,然后转步骤(10);(10)重启控制器收到故障信息,判断其所调用的子组件的重启次数,若未超过限定 次数,将故障信息发送至故障分析和决策器,转步骤(11);若超过限定次数,不对故障 进行处理,将故障信息转发给插拔控制器,转步骤(12);(11)故障分析和决策器接收到重启控制器发送的故障信息,检索重启级故障表,若 与故障信息对应的处理措施为“重启”或未检索到相应的故障信息,将处理措施即重启 处理返回给重启控制器,由重启控制器重启子组件,再次尝试执行请求,转步骤(9); 否则,将处理措施即不重启返回给重启控制器,再由重启控制器将故障信息转发给插拔 控制器,转步骤(12);(12)插拔控制器接收其所调用的下层业务逻辑处理组件的返回结果,若接收到的是 成功执行后的转发对象,则将转发对象返回给请求控制器,转步骤(1 ;若接收到的是 故障信息,转步骤(13);(13)插拔控制器判断其所调用的可插拔的业务逻辑处理组件的插拔次数,若未超过 限定次数,将故障信息发送至故障分析和决策器,转步骤(14);若超过限定次数,则不 对故障进行处理,将故障信息转发给请求控制器,转步骤(15);(14)故障分析和决策器接收到插拔控制器发送的故障信息,检索插拔级故障表,若 与故障信息对应的处理措施为“插拔”或未检索到相应的故障信息,将处理措施即插 拔处理返回给插拔控制器,由插拔控制器对出现故障的组件进行热插拔,然后重新调用 业务逻辑处理组件执行请求,转步骤(6);否则,将处理措施即不插拔返回给插拔控制 器,再由插拔控制器将故障信息转发给请求控制器,转步骤(15);(15)请求控制器接收其所调用的插拔控制器的返回结果,若接收到的是成功执行后 的转发对象,则将转发对象发送至用于转发的组件,转步骤(18);若接收到的是故障信 息,转步骤(16);(16)请求控制器运用耗时决策算法判断从用户提交请求至请求控制器捕获故障信息 的耗时,若未超过限定的用户可容忍的时间,则将故障信息发送至故障分析和决策器, 转步骤(17);若超过限定的用户可容忍的时间,则不对故障进行处理,并将转发对象指 定到出错提示界面,然后将转发对象发送至用于转发的组件,转步骤(18);(17)故障分析和决策器接收到请求控制器发送的故障信息,检索请求级故障表,若 与故障信息对应的处理措施为“重发请求”或未检索到相应的故障信息,将处理措施即 重发请求返回给请求控制器,由请求控制器重新对请求信息做处理后,选择并调用能实 现该请求的插拔控制器执行请求。转步骤(5);否则,将处理措施即不重发请求返回给 请求控制器,并由请求控制器将转发对象指定到出错提示界面,然后将此对象发送至用 于转发的组件,转步骤(18);(18)用于转发的组件接收到请求控制器发送的转发对象,对转发对象做必要的处 理,最后转发请求。
2.根据权利要求1所述的一种面向MVC架构下Web系统的分级自恢复方法,其特征 是步骤(6)中所述的如果调用失败包括组件丢失或组件内部结构发生变化。
全文摘要
本发明提供的是一种面向MVC架构下Web系统的分级自恢复方法。将系统最可能产生故障的“故障产生点”主要集中在这些功能复杂的业务逻辑处理组件上,并且采用不同的恢复方式,由低到高依次是重启子组件、热插拔业务逻辑处理组件及重发用户请求,对系统进行逐级的恢复。若低级别的恢复方式能够解决故障,则不需要高级的恢复方式,否则将尝试更高级别的恢复方式来处理故障。对于每种恢复级别,等级越高,恢复代价越大,但恢复能力也更强。本发明能减少恢复时间,降低恢复成本,增强MVC架构下Web系统安全性与生存性。
文档编号H04L12/24GK102025530SQ20101024786
公开日2011年4月20日 申请日期2010年8月9日 优先权日2010年8月9日
发明者周晓耕, 王慧强, 董玺坤, 郑业青 申请人:哈尔滨工程大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1