当前位置: 首页 > 专利查询>波音公司专利>正文

用于监视软件应用程序进程的系统和方法技术方案

技术编号:24707592 阅读:39 留言:0更新日期:2020-06-30 23:55
公开了用于监视软件应用程序进程的系统和方法。一种用于监视进程的系统包括第一计算节点(102)和第二计算节点(104)。第一计算节点包括进程监视器(140)、状态数据分析器(146)、进程监视器检查器(142)以及对等方监视器(150)。进程监视器被配置为生成软件应用程序(122)的第一实例(160)的进程状态数据。状态数据分析器被配置为基于确定软件应用程序的第一实例的预期进程已经停止运行,选择性地重启软件应用程序的第一实例。进程监视器检查器被配置为响应于确定进程监视器已经停止运行,重启进程监视器。对等方监视器被配置为响应于确定软件应用程序的第二实例在第二计算节点失败,基于与软件应用程序的第二实例关联的未完成任务,执行动作。

【技术实现步骤摘要】
用于监视软件应用程序进程的系统和方法
本公开总体上涉及监视软件应用程序的进程。
技术介绍
计算服务器可以运行软件应用程序以提供服务。软件应用程序可能由于各种原因而停止,比如堆栈溢出、网络或电力中断或其他意外中断。在软件应用程序停止与系统管理员确定软件应用程序已经停止之间可能存在延迟。在系统管理员检测到软件应用程序已经停止与系统管理员重新启动软件应用程序之间也可能存在延迟。重新启动软件应用程序的延迟增加了服务不可用的停用时间。由系统管理员对软件应用程序进行连续监视则会不方便且昂贵。
技术实现思路
在具体实现方式中,一种用于监视进程的系统包括:多个计算节点中的第一计算节点,多个计算节点被配置为运行软件应用程序的多个实例。该系统还包括多个计算节点中的第二计算节点。第一计算节点包括进程监视器、状态数据分析器、进程监视器检查器以及对等方监视器。进程监视器被配置为为在第一计算节点运行的软件应用程序的第一实例生成进程状态数据。状态数据分析器被配置为基于进程状态数据,确定软件应用程序的第一实例的预期进程是否已经在第一计算节点停止运行。状态数据分析器还被配置为基于确定预期进程已经在第一计算节点停止运行,选择性地重启软件应用程序的第一实例。进程监视器检查器被配置为确定进程监视器是否正在第一计算节点运行。进程监视器检查器还被配置为响应于确定进程监视器已经在第一计算节点停止运行,重启进程监视器。对等方监视器被配置为确定软件应用程序的第二实例是否在多个计算节点中的第二计算节点失败。对等方监视器还被配置为响应于确定第二实例在第二计算节点失败,基于与软件应用程序的第二实例关联的未完成任务,执行动作。在另一个具体实现方式中,一种用于监视进程的方法包括:在被配置为运行软件应用程序的多个实例的多个计算节点中的第一计算节点,生成在第一计算节点运行的软件应用程序的第一实例的进程状态数据。该方法还包括基于进程状态数据,确定软件应用程序的第一实例的预期进程是否已经在第一计算节点停止运行。该方法还包括基于确定预期进程已经在第一计算节点停止运行,选择性地在第一计算节点重启软件应用程序的第一实例。该方法还包括确定软件应用程序的第二实例是否在多个计算节点中的第二计算节点失败。该方法还包括响应于确定第二实例在第二计算节点失败,基于与软件应用程序的第二实例关联的未完成任务,执行动作。在另一个具体实现方式中,一种计算机可读存储设备存储有指令,指令在被处理器执行时使处理器执行包括以下的操作:在被配置为运行软件应用程序的多个实例的多个计算节点中的第一计算节点,生成在第一计算节点运行的软件应用程序的第一实例的进程状态数据。操作还包括基于进程状态数据,确定软件应用程序的第一实例的预期进程是否已经在第一计算节点停止运行。操作还包括基于确定预期进程已经在第一计算节点停止运行,选择性地在第一计算节点重启软件应用程序的第一实例。操作还包括确定软件应用程序的第二实例是否在多个计算节点中的第二计算节点失败。操作还包括响应于确定第二实例在第二计算节点失败,基于与软件应用程序的第二实例关联的未完成任务,执行动作。本文所描述的特征、功能和优点可以在各种实现方式中独立地实现或者可以在其他实现方式中组合,其进一步细节可参考以下描述和附图找到。附图说明图1是示出可操作以对软件应用程序的进程进行监视的系统的框图;图2是示出用于监视软件应用程序的进程的方法的示例的流程图;图3是示出用于监视软件应用程序的进程的方法的示例的流程图;图4是示出用于监视软件应用程序的进程的方法的示例的流程图;图5A是示出图1的系统的状态数据分析器和存储器的示例的示图;图5B是示出由图1的系统的状态数据分析器执行的方法的示例的流程图;图6是示出用于监视软件应用程序的进程的方法的示例的流程图;图7是示出用于监视软件应用程序的进程的方法的示例的流程图;以及图8是描绘包括计算设备的计算环境的框图,计算设备被配置为支持根据本公开的计算机实现的方法和计算机可执行程序指令(或代码)的各方面。具体实施方式本文描述的实现方式涉及监视软件应用程序的进程。例如,系统包括被配置为运行软件应用程序的多个实例的多个计算节点。例如,第一计算节点被配置为运行软件应用程序的第一实例,第二计算节点被配置为运行软件应用程序的第二实例。多个计算节点中的每一个包括服务组,服务组被配置为监视软件应用程序是否如预期地在该节点运行。例如,第一计算节点的服务组包括进程监视器、进程监视器检查器或两者。进程监视器生成进程状态数据,进程状态数据指示正在第一计算节点运行的软件应用程序的进程。进程监视器向第一计算节点的状态数据分析器提供进程状态数据。响应于确定进程监视器已经在第一计算节点停止运行,进程监视器检查器重启进程监视器。服务组的一个或多个组件被配置为监视服务组的一个或多个其他组件。在具体示例中,进程监视器和进程监视器检查器被配置为彼此监视。为了说明,响应于确定进程监视器检查器在第一计算节点未运行(例如已经停止运行),进程监视器重启进程监视器检查器,并且响应于确定进程监视器在第一计算节点未运行(例如已经停止运行),进程监视器检查器重启进程监视器。在该示例中,进程监视器或进程监视器检查器中未运行(例如已经停止运行)的任一个,可由进程监视器或进程监视器检查器中的另一个重启。因此,服务组提供多级检查以实现对第一计算节点的进程的鲁棒监视。状态数据分析器被配置为基于分析进程状态数据,执行一个或多个动作,比如生成通知、重启软件应用程序、重启软件应用程序的进程、禁止重启软件应用程序、关闭服务组、更新日志数据、清理临时文件或它们的组合。状态数据分析器可以访问要监视的进程列表。为了说明,当软件应用程序正常工作时,被监视的进程预期为正在运行。响应于确定进程状态数据指示预期进程已经停止运行,状态数据分析器执行一个或多个动作。在一些示例中,状态数据分析器针对不同类型的预期进程执行不同的动作。在具体示例中,响应于确定第一进程类型的第一预期进程未运行(例如已经停止运行),状态数据分析器重启软件应用程序的第一实例。作为另一个示例,响应于确定第二进程类型的第二预期进程未运行(例如已经停止运行),状态数据分析器启动(或重启)第二预期进程。因此,状态数据分析器减少了与软件应用程序的第一实例关联的停机时间。多个计算节点中的一些计算节点还包括对等方警报服务组,对等方警报服务组被配置为监视软件应用程序是否如预期地在其他节点运行。对等方警报服务组包括对等方监视器、对等方监视器检查器或两者。对等方监视器访问集群进程数据,集群进程数据指示正在多个计算节点运行的该软件应用程序的进程。在一个示例中,第一计算节点包括对等方警报服务组,并且对等方监视器向第一计算节点的状态数据分析器提供集群进程数据。响应于确定对等方监视器在第一计算节点未运行(例如已经停止运行),对等方监视器检查器重启对等方监视器。对等方警报服务组的一个或多个组件被配置为监视对等方警报服务组的一个或多个其他组件。在具体示例本文档来自技高网...

【技术保护点】
1.一种用于监视进程的系统(100),所述系统包括:/n多个计算节点(102、104、106)中的第一计算节点(102),所述多个计算节点(102、104、106)被配置为运行软件应用程序(122)的多个实例(160、162),所述第一计算节点(102)包括:/n进程监视器(140),被配置为生成在所述第一计算节点(102)运行的所述软件应用程序(122)的第一实例(160)的进程状态数据(105);/n状态数据分析器(146),被配置为:/n基于所述进程状态数据(105),确定所述软件应用程序(122)的所述第一实例(160)的预期进程(107)是否已经在所述第一计算节点(102)停止运行;以及/n基于确定所述预期进程(107)已经在所述第一计算节点(102)停止运行,选择性地重启所述软件应用程序(122)的所述第一实例(160);/n进程监视器检查器(142),被配置为:/n确定所述进程监视器(140)是否已经在所述第一计算节点(102)停止运行;以及/n响应于确定所述进程监视器(140)已经在所述第一计算节点(102)停止运行,重启所述进程监视器(140);以及/n对等方监视器(150),被配置为:/n确定所述软件应用程序(122)的第二实例(162)是否在所述多个计算节点(102、104、106)中的第二计算节点(104)失败;以及/n响应于确定所述第二实例(162)在所述第二计算节点(104)失败,基于与所述软件应用程序(122)的所述第二实例(162)关联的未完成任务(109),执行动作(128);以及/n所述第二计算节点(104)。/n...

【技术特征摘要】
20181220 US 16/227,9911.一种用于监视进程的系统(100),所述系统包括:
多个计算节点(102、104、106)中的第一计算节点(102),所述多个计算节点(102、104、106)被配置为运行软件应用程序(122)的多个实例(160、162),所述第一计算节点(102)包括:
进程监视器(140),被配置为生成在所述第一计算节点(102)运行的所述软件应用程序(122)的第一实例(160)的进程状态数据(105);
状态数据分析器(146),被配置为:
基于所述进程状态数据(105),确定所述软件应用程序(122)的所述第一实例(160)的预期进程(107)是否已经在所述第一计算节点(102)停止运行;以及
基于确定所述预期进程(107)已经在所述第一计算节点(102)停止运行,选择性地重启所述软件应用程序(122)的所述第一实例(160);
进程监视器检查器(142),被配置为:
确定所述进程监视器(140)是否已经在所述第一计算节点(102)停止运行;以及
响应于确定所述进程监视器(140)已经在所述第一计算节点(102)停止运行,重启所述进程监视器(140);以及
对等方监视器(150),被配置为:
确定所述软件应用程序(122)的第二实例(162)是否在所述多个计算节点(102、104、106)中的第二计算节点(104)失败;以及
响应于确定所述第二实例(162)在所述第二计算节点(104)失败,基于与所述软件应用程序(122)的所述第二实例(162)关联的未完成任务(109),执行动作(128);以及
所述第二计算节点(104)。


2.如权利要求1所述的系统(100),其中,所述进程监视器(140)还包括进程监视器检查器验证器(144),被配置为:
确定所述进程监视器检查器(142)是否已经在所述第一计算节点(102)停止运行;以及
响应于确定所述进程监视器检查器(142)已经在所述第一计算节点(102)停止运行,重启所述进程监视器检查器(142)。


3.如权利要求1或2所述的系统(100),其中,所述第一计算节点(102)还包括对等方监视器检查器(152),被配置为:
确定所述对等方监视器(150)是否已经在所述第一计算节点(102)停止运行;以及
响应于确定所述对等方监视器(150)已经在所述第一计算节点(102)停止运行,重启所述对等方监视器(150),
其中,所述对等方监视器(150)包括对等方监视器检查器验证器(154),被配置为:
确定所述对等方监视器检查器(152)是否已经在所述第一计算节点(102)停止运行;以及
响应于确定所述对等方监视器检查器(152)已经在所述第一计算节点(102)停止运行,重启所述对等方监视器检查器(152)。


4.如权利要求1或2所述的系统(100),其中,响应于确定所述预期进程(107)已经在所述第一计算节点(102)停止运行,所述状态数据分析器(146)被配置为:
确定是否满足应用程序重启标准(111);以及
响应于确定满足所述应用程序重启标准(111),在所述第一计算节点(102)重启所述软件应用程序(122)的所述第一实例(160);并且其中,所述状态数据分析器(146)被配置为:
基于所述进程状态数据(105),确定在第一时间(513)检测到所述预期进程(107)在所述第一计算节点(102)未运行;
确定所述第一时间(513)与启动时间(511)之间的差是否大于或等于时间阈值(515),其中,所述启动时间(511)指示所述预期进程(107)先前在所述第一计算节点(102)启动的时间;
响应于确定所述差大于或等于所述时间阈值(515),重置失败计数器(517);
基于所述失败计数器(517),确定是否满足所述应用程序重启标准(111);
确定所述失败计数器(517)是否大于或等于失败计数阈值(519);以及
响应于确定所述失败计数器(517)小于所述失败计数阈值(519),确定满足所述应用程序重启标准(111)。


5.如权利要求4所述的系统(100),其中,所述状态数据分析器(146)被配置为响应于确定所述失败计数器(517)大于或等于所述失败计数阈值(519),确定不满足所述应用程序重启标准(111)。


6.如权利要求4所述的系统(100),其中,所述状态数据分析器(146)被配置为响应于确定不满足所述应用程序重启标准(111),进行以下中的至少一个:禁止在所述第一计算节点(102)重启所述软件应用程序(122)的所述第一实例(160)以及停止所述进程监视器(140)、所述进程监视器检查器(142)和所述对等方监视器(150)在所述第一计算节点(102)运行。


7.如权利要求4所述的系统(100),还包括:集群管理设备(110)和存储设备(108),其中,所述状态数据分析器(146)被配置为响应于确定不满足所述应用程序重启标准(111),向用户设备(112)发送第一通知(153)、向所述集群管理设备(110)发送第二通知(151)、向所述多个计算节点(102、104、106)中的第三计算节点(106)发送第三通知(157)、更新所述存储设备(108)中的日志数据(131)以指示所述软件应用程序(122)在所述第一计算节点(102)关闭、或它们的组合。
<...

【专利技术属性】
技术研发人员:詹姆斯·J·特洛伊布鲁斯·马文·克雷格
申请(专利权)人:波音公司
类型:发明
国别省市:美国;US

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

1