分布式系统、服务器计算机、分布式管理服务器和故障防止方法技术方案

技术编号:9838749 阅读:131 留言:0更新日期:2014-04-02 02:15
本发明专利技术涉及分布式系统、服务器计算机、分布式管理服务器和故障防止方法。根据示例性实施例的分布式系统包括能够执行相同应用的第一和第二服务器,其中在第一服务器中的应用中出现故障时,第一服务器生成识别该应用中故障的原因的故障信息,并且第二服务器执行基于该故障信息所确定并且意在防止应用中的故障的故障防止处理。

【技术实现步骤摘要】
分布式系统、服务器计算机、分布式管理服务器和故障防止方法引用并入本申请基于2012年9月24日提交的日本专利申请号2012-209911并且要求其优先权,其公开通过引用整体包含于此。
本申请涉及一种分布式系统、服务器计算机、分布式管理服务器和故障防止方法。
技术介绍
在业务系统中,经常由于应用服务器上所实施的业务应用程序中的缺陷而出现故障,导致整个业务系统瘫痪。业务应用中的故障示例包括以下。第一示例是死锁。死锁是指其中执行应用逻辑的多个线程相互进行互斥控制(锁定获取等)并且因此每个线程的执行都保持被阻止的状态。在这种情况下存在着问题,诸如用作诸如浏览器的应用的调用方的客户端应用无法获取针对请求的相应,从而无法更新屏幕。第二示例是过度存储器消耗。过度存储器消耗是指其中可用于应用服务器的存储器区域例如由于在与业务相关的查询处理中对大量数据进行处理的应用逻辑的一次性执行而减少的情形。在这种情况下,在并行执行相同处理上所运行的另一应用逻辑的线程的处理中可能出现延迟,或者由于在处理期间存储器短缺导致错误可能出现。最差的情况下,应用服务器的处理中止。第三示例是过度中央处理器(CPU)消耗(过高CPU使用)。过度CPU消耗是指其中CPU由于出现无限循环或冗余应用逻辑而比必要情况下使用得更多的情形。在这种情况下,例如出现应用调用方无法获取针对请求的响应从而无法更新屏幕的问题。还会出现在并行执行相同处理上所运行的另一应用逻辑的线程的处理中出现延迟的问题。当这样的情况发生时,其通常可以通过重启故障应用服务器而被消除。然而,在任意情形中,根本的解决方案需要对所涉及的应用程序进行修改。出于该原因,系统操作任意可能必须采取临时措施,诸如定期重启应用服务器或者对关于应用服务器的参数进行调谐,从而防止如以上所描述的故障再次发生直至应用得以被修改。作为用于应对故障的技术,日本未审专利申请公开号2010-9127公开了一种识别作为故障原因的组件的管理装置。特别地,当其中包括应用服务器的计算机和包括管理系统的计算机经由网络连接在一起的系统中出现异常时,该管理装置能够确定该故障发生在应用服务器和管理系统中的哪一个之中。日本未审专利申请公开号2006-338069公开了一种响应于故障的迹象或发生而防止错误出现以及防止性能下降的组件软件操作架构。特别地,在包括多个组件(软件组件)的组件软件的执行期间,该组件软件操作架构利用另一组件对组件进行替换。日本未审专利申请公开号2005-209029公开了一种包括多个应用服务器计算机和管理服务器计算机的应用管理系统。每个应用服务器计算机参考存储在管理服务器计算机中的应用操作定义存储文件以对已经请求其执行的应用的执行进行控制和管理。当在应用服务器计算机所执行的应用中发生故障时,应用服务器计算机将该事实通知另一应用服务器计算机或外部计算机。目前,使用云计算技术的系统化正在普及。这样的系统化是指构建一个使用分布于许多网络上的大量应用服务器的系统。在这样的环境中,负载是分布式的。因此,在单个服务器中发生异常(例如,由于发生故障)不太可能导致整个系统瘫痪。然而,如果故障是由与应用程序自身相关联的问题所导致,则所有应用服务器都存在着在未来经历相同故障的潜在风险。出于该原因,系统操作人员必须不可避免地采取如以上所描述的临时措施,除非其采取了诸如将故障应用降低至之前版本的措施。另外,随着服务器数量的增加,这样的故障更可能在系统中出现。这导致了采取临时措施的操作成本的增加。日本未审专利申请公开号2010-9127和2006-338069中均未考虑到诸如应用服务器的多个服务器如云计算中那样进行部署的情形。对于根据日本未审专利申请公开号2005-209029的应用管理系统而言,当在由应用服务器计算机所执行的应用中出现异常时,其无法防止在另一应用服务器计算机中发生类似的异常。
技术实现思路
本专利技术的目标的示例是提供一种防止在服务器中出现故障而并不增加系统操作人员的负担的分布式系统、服务器计算机、分布式管理服务器和故障防止方法。在本专利技术的第一示例性方面,一种分布式系统包括:能够执行相同应用的第一和第二服务器,其中当该第一服务器中的该应用中出现故障时,该第一服务器生成识别该应用中的故障的原因的故障信息,并且该第二服务器执行基于该故障信息所确定并且意在防止该应用中的故障的故障防止处理。在第二示例性方面,一种服务器计算机,该服务器计算机部署在分布式系统中并且连接至能够执行相同应用的另一个服务器计算机,其中当该应用中出现故障时,该服务器计算机生成识别该应用中的故障的原因的故障信息,并且当所述另一服务器生成识别该应用中的故障的原因的故障信息时,该服务器计算机执行基于该故障信息所确定并且意在防止该应用中的故障的故障防止处理。在第三示例性方面,一种分布式管理服务器,该分布式管理服务器部署在包括能够执行相应应用的第一和第二服务器的分布式系统中,其中当该分布式管理服务器从该第一服务器接收到识别该第一服务器中的该应用中的故障的原因的故障信息时,该分布式管理服务器向该第二服务器传送该故障信息,该故障信息用作由该第二服务器用来执行防止该应用中的故障的故障防止处理的信息。在第四示例性方面,在包括能够执行相同应用的第一和第二服务器的分布式系统中,一种用于防止应用中的故障的故障防止方法,包括:当第一服务器中的应用中出现故障时,由该第一服务器生成识别应用中的故障的原因的故障信息,并且由第二服务器执行基于该故障信息所确定并且意在防止应用中的故障的故障防止处理。鉴于上文,可能提供一种能够防止服务器中的故障而并不增加系统操作人员的负担的分布式系统、服务器计算机、分布式管理服务器和故障防止方法。附图说明根据以下所给出的详细描述以及仅通过图示而给出并且因此不应被认为对本专利技术进行限制的附图,本专利技术的以上和其它目标、特征和优势将得到更为全面地理解。图1是示出根据第一实施例的分布式系统的第一示例配置的框图;图2是示出根据第一实施例的分布式系统的第二示例配置的框图;图3是示出根据第二实施例的分布式管理系统的示例配置的框图;图4A是示出根据第二实施例的由应用服务器所执行的处理示例的第一流程图;图4B是示出根据第二实施例的由应用服务器所执行的处理示例的第二流程图;图5是根据第二实施例的潜在故障存储单元中所存储的数据的概念图;图6是示出根据第二实施例的由分布式管理服务器所执行的处理示例的流程图;图7是根据第二实施例的存储在故障信息存储单元16中的数据示例的概念图;图8是示出根据第二实施例的由应用服务器所执行的监视处理示例的流程图;图9A是根据第二实施例的用于防止死锁故障的请求处理控制示例的概念图;图9B是根据现有技术的可能出现死锁故障的请求处理控制的概念图;图10A是示出根据第二实施例的故障信息存储单元16在时间t1所存储的数据示例的表格;图10B是示出根据第二实施例的故障信息存储单元16在时间t2所存储的数据示例的表格;图10C是示出根据第二实施例的故障信息存储单元16在时间t3所存储的数据示例的表格;图11A是根据第二实施例的用于防止过度存储器消耗故障的请求处理控制示例的概念图;图11B是根据现有技术的可能出现过度存储器消耗故障的请求处理控制的概念图;图12A是示出根据本文档来自技高网
...
分布式系统、服务器计算机、分布式管理服务器和故障防止方法

【技术保护点】
一种分布式系统,所述分布式系统包括能够执行相同应用的第一和第二服务器,其中当所述第一服务器中的所述应用中出现故障时,所述第一服务器生成识别所述应用中的故障的原因的故障信息,并且所述第二服务器执行基于所述故障信息所确定并且意在防止所述应用中的故障的故障防止处理。

【技术特征摘要】
2012.09.24 JP 2012-2099111.一种分布式系统,所述分布式系统包括:被配置为运行应用的第一服务器,所述第一服务器被配置为:当在所述第一服务器上运行的应用出现故障时,所述第一服务器生成识别所述应用中的所述故障的原因的故障信息,所述故障信息指示以下方面中的一个或多个:引起所述故障的所述应用的组件;以及与引起所述故障的所述组件相关联的接口;被配置为运行所述应用的第二服务器,所述第二服务器被配置为:基于所述故障信息来执行故障防止处理,以在所述第二服务器上运行的所述应用中防止相应的故障。2.根据权利要求1所述的分布式系统,进一步包括:被配置为管理所述第一服务器和所述第二服务器的分布式管理服务器,其中,所述故障信息包括识别所述第一服务器从所述故障中恢复的恢复处理的信息,其中,所述分布式管理服务器被配置成:从所述故障信息提取该信息,并且将该信息传送至所述第一服务器,并且其中,所述第一服务器被配置成:执行从所述分布式管理服务器接收到的所述恢复处理。3.根据权利要求1所述的分布式系统,其中,所述应用中的所述故障是由来自所述第一服务器的客户端的请求而引起的,并且其中,所述第二服务器被配置成,基于所述故障信息对来自所述第二服务器的客户端的请求进行监视。4.根据权利要求3所述的分布式系统,其中,所述组件是第一组件,所述接口是所述第一组件的第一接口,并且所述第一接口具有任意组件的任意接口的最高数量的故障,其中,当所述故障是关于所述第一接口并且故障频率大于阈值时,所述第一服务器被配置为将所述第一接口识别为所述故障的原因,并且被配置为将所述故障信息输出为包括第二组件的第二接口,所述第二接口具有任意组件的任意接口的第二最高数量的故障,并且其中,响应于接收到来自于所述第一接口的客户端的请求、并且响应于确定了所述第二接口正在被执行,所述第二服务器被配置为防止对所述请求的处理。5.根据权利要求3所述的分布式系统,其中,所述组件是第一组件,所述接口是所述第一组件的第一接口,其中,当所述故障是关于所述第一接口并且故障频率大于阈值、并且当另一故障是关于第二组件的第二接口并且故障频率大于所述阈值时,所述第一服务器被配置为将所述第一接口识别为所述故障的原因,并且被配置为将所述故障信息输出为包括所述第二组件的第二接口,并且其中,响应于接收到来自客户端的请求、并且响应于确定了所述第二接口正在被执行,所述第二服务器被配置为防止对所述请求的处理。6.根据权利要求4所述的分布式系统,其中响应于接收到来自所述客户端的另一请求、并且响应于确定了所述第一接口正在被执行,所述第二服务器被配置为防止对所述另一请求的处理。7.根据权利要求3所述的分布式系统,其中,所述组件是第一...

【专利技术属性】
技术研发人员:冈田好大
申请(专利权)人:日本电气株式会社
类型:发明
国别省市:日本;JP

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1