一种基于状态的应用监控与恢复算法与模型的制作方法

文档序号:6501609阅读:138来源:国知局
一种基于状态的应用监控与恢复算法与模型的制作方法
【专利摘要】本发明是一种基于状态的应用恢复算法,该算法实现应用监测和恢复整个过程的准确识别,并对保证相关操作进行跟踪,确保操作处于正确的上下文,并提出了该算法应用于实际的模型。该算法对组件子态进行运算,通过切换机制实现了正确的状态跟踪。本发明解决了现有监控技术目标单一,或者机制简单,无法适应当前应用设计和架构的发展的问题,同时可以提供对整个监控与恢复工作所有环节进行精确控制能力。本发明既区别于,又可结合使用应用开发可靠性模型提高应用水平的方法,可以取得良好的使用效果。本发明能有效提高信息服务系统运行的连续性。
【专利说明】-种基于状态的应用监控与恢复算法与模型

【技术领域】
[0001] 本发明基于策略的服务监控与恢复技术,尤其涉及信息服务系统的运行监控、运 维以及持续运行保证技术。

【背景技术】
[0002] 计算机应用服务以越来越复杂的行式出现。多数应用需要处理大量的数据,完成 0LAP或者0LTP业务,由层次结构的开发、架构技术构成,也有众多的传统应用以服务、一般 程序的方式运行。由于已经计算机服务已经深入到社会生活,这些服务中断或停运导致的 影响和损失不断加大。
[0003] 人们发明、设计了许多方法来解决计算机服务的稳定性。首先是提高程序的系统 的稳定性与可靠性,这一方法理论上能够从根本上提高服务的连续性,然而,由于信息服务 运行在拥有复杂技术和组成构件的计算机及其操作系统上,这些基础平台的所有问题均可 能导致服务中断。因而,在外部对应用服务进行监控成为重要信息系统必须考虑的问题。当 前,几个领先商业公司生产双机热备产品,然而,他们针对有限应用,有特定的使用需求,同 时具有昂贵的价格。也有一些系统试图完成一些监控,但由于方法单一,技术简单,使用复 杂而难以达到使用效果。实际上通过低成本可靠产品,实现服务的有效监控与自动恢复,具 有普遍意义。


【发明内容】

[0004] 初步算法 一般应用系统可以由多个组件构成,每个组件有自己的运行状态。简单地,可以有 A={xi},其中i=l?n,并设其域为D。
[0005] 由于每个组件有不同的状态,则状态函数为P(xi),其中i=l?n,再将P(xi)对应 的结果进行定义: 定义1.1:函数Ρ(χ)的结果,定义为"子态"。那么可将Ρ(χ)的结果集设为 B={yi},i=l?m。这就是子态集合,那么可以有如下关系: 对于域D,有 x,P(x),当然xeA,不难得出,P(x)得到的结果必然属于B={y}集 合,那么可以看出,应用的全部子态为集合A与集合B的笛卡尔积。
[0006] 对子态集合的改造 考虑实际需要,设定其只有2个子态,就是正确与错误状态,那么简化、改造子态集合 后,就有2个集合,一个Sg,Sg= {Ti},i=l?n,该子态对应的逻辑状态为组件正常的状态,另 一个Sf,Sf={Fi},i=l?n,其子态对应的逻辑状态为导致组件失败的状态,这样每一个分 离的子态集合均实现了与集合A的--映射。
[0007] 复杂性分析 为了实现应用的正确识别与干预,必须对每一个处于Sf(x)子态的X进行干预。实际 上,在域D范围内,如果有x,P(x),P(x) SF(x),就意味应用错误,而在域D范围内,有X, P(x),P(x) SG(x),就代表应用正确。同时,由于组件之间的关联关系,对错误的干预必然需 要正确的context上下文环境依据,同时,如果监视得到了应用正确的结果,为了取得准确 的监控效果,也需要context上下文环境依据。
[0008] 由于考虑了上下文,情况更加复杂。因为,为了达到好的效果,集合A需要考虑顺 序。此时,实际上,对于任意X和y (X e A,y e A),有 (x, y), R(x, y),且对于任意x和 ζ (χ e Α,ζ e Α),有 (χ, z), R(x, z),并且也有可能对于任意z和y (x e A,z e A), 有(z,y),R(z,y)。此时,其子态与状态关系图过于复杂,且工作单元尚未引进,因此这一 状态关系图无法实际使用。
[0009] 算法优化与带有关系R的模型 为了简化这一复杂关系图,按照应用监控与恢复的宏观使用进行分类处理。为此,引入 阶段的概念,它是应用监控与恢复的宏观管理状态的理论化。设Pn,Pc,Pr表示三个阶段性 状态,分别代表正确状态和错误期状态,恢复期状态。可以用固定成员集合C={Pc,Pr,Pn} 表示。再设SF,SG表示应用的两个状态,分别为代表应用的正常与错误。可以用固定成员 集合E={SF,SG}表示。
[0010] 实践地,应用的控制与恢复的关键就在于这些状态与子态之间的可管理性转变。 对此,引入以下定义: 定义4. 1:当应用由一个特定的状态以及子态,转变为另一个一个特定的状态以及子 态,或者应用由一个特定的状态以及子态,经过一个或几个处理过程后,仍然保持在原先的 状态以及子态,定义为"切换"。
[0011] 实际上,由于这5个状态仅用于切换,则将这5个状态一起,引入新的定义。
[0012] 定义4. 2:集合C,E的所有成员,表示为集合F={C,E},定义为"状态"。
[0013] 此时,附图1,2, 3表示各子态与状态间的关系,并且考虑关系R。
[0014] 实用单元的引入 为了实用性考虑,在引入Pc,Pr,Pn状态前提下,再自然引入2个状态,他们都是僵持状 态,分别为SPc错误处置失效和SPr恢复处置失效,用以标记由于某种原因错误处置失败 而无法继续的情形和由于某种原因恢复无法成功的情形。
[0015] 同时,需要引入成员:CHKe单元。这一单元考虑了简化的关系集合R,实际执行了 集合B的子态切换,并完成Pc,Pr,Pn状态阶段的切换。CHKe单元对应使用中的子态、状态 分析和跟踪单元。
[0016] 为了描述清楚,再引入Ac处置单元与Ar恢复单元。Ac处置单元执行错误处置,工 作且仅工作在执行Pr阶段;Ar恢复单元恢复工作,工作且仅工作在执行Pr阶段。
[0017] 实用模型 为了软件工程的需要,可将关系R用虚线简化示意。则附图4, 5, 6和图7分别表示了 各工作单元、状态、子态与应用状态间的切换关系。
[0018]

【专利附图】

【附图说明】: 附图1,2, 3表示了算法优化后带有关系R的模型。
[0019] 图1是Pn阶段; 图2是Pc阶段; 其中,Sf (1)代表按Sf集合中既定顺序的第一个子态;Sf (X)代表Sf集合中按既定 顺序的第所有中间子态,Sf (η)代表Sf集合中按既定顺序的第最后一个子态。
[0020] 图3是Pr阶段; 其中,Sg(l)代表按Sg集合中既定顺序的第一个子态;Sg(x)代表Sg集合中按既定 顺序的第所有中间子态,Sg(η)代表Sg集合中按既定顺序的第最后一个子态。
[0021] 附图4, 5, 6, 7表示了引入实际单元的模型,将应用的状态分成三个大的阶段状态 集,直接反映了实践中简化了的子态关系。图示中,实线代表工程实践中的组件和状态逻 辑,虚线则表示了理论上的状态切换关系。
[0022] 图4是Pn阶段; 图5是Pc阶段; 图5是Pr阶段; 通过图1,2, 3,基于子态、状态的分析、监控逻辑雏形基本形成,但是,上述子态、状态逻 辑图仅仅是子态与状态间的切换,为了能够建立可以应用的数学模型,还需引入必要的工 作单元。
[0023] 通过图4, 5, 6,由于引入了状态概念,使子态、状态的切换关系得到了清晰的表达, 将图4, 5, 6统一起来,得到图7,就成为一个具有实践意义的理论模型。
[0024] 实践中,有软件使用了这一模型,它实际实现对了关系R的考虑,同时对CHKe单元 进行了系统化的设计与实现,同时完整实现了 Ar,Ac单元功能,取得了预期的使用效果。 实践证明,使用该算法和模型得到了预期的使用效果。
[0025] 以上所描述的仅仅是本发明较佳的实现方式,并不用以限定本发明的保护范围, 任何等同的变化和修改皆应涵盖在本发明的保护范围之内。
【权利要求】
1. 一种基于状态的应用监控与恢复算法与模型,应用于信息信息系统监控与恢复系统 中,利用基于子态的切换机制,实现应用监测和恢复整个过程的准确识别,并对保证相关操 作进行跟踪,确保操作处于正确的上下文。
2. 如权利要求1中的监控与恢复系统,其特征在于,把应用分离成独立组件,并考虑顺 序的依赖的关系,则在任意情况下,使用该算法和模型可以准确地识别系统工作的上下文。
3. 如权利要求1中的描述的状态,包含有3个时期性状态,正常时期Pn、错误期Pc、以 及错误恢复期Pr,2个失效状态,是处置错误失败状态Spc和恢复失败Spr ;还包括任一组 件正常态Sg(x)和任一组件错误态Sf(x)。
4. 如权利要求1中所述的系统,至少包括监视调度单元、错误处置单元和恢复单元。
【文档编号】G06F11/00GK104102551SQ201310122807
【公开日】2014年10月15日 申请日期:2013年4月10日 优先权日:2013年4月10日
【发明者】沙永刚 申请人:北京中嘉时代科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1