CN108509292B - 向软件组件应用恢复机制的***和方法 - Google Patents

向软件组件应用恢复机制的***和方法 Download PDF

Info

Publication number
CN108509292B
CN108509292B CN201810194336.4A CN201810194336A CN108509292B CN 108509292 B CN108509292 B CN 108509292B CN 201810194336 A CN201810194336 A CN 201810194336A CN 108509292 B CN108509292 B CN 108509292B
Authority
CN
China
Prior art keywords
software component
failed
computer software
component
software components
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201810194336.4A
Other languages
English (en)
Other versions
CN108509292A (zh
Inventor
什洛莫·加贝尔
埃利兰·塔米尔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Bio Rad Laboratories Inc
Original Assignee
Bio Rad Laboratories Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Bio Rad Laboratories Inc filed Critical Bio Rad Laboratories Inc
Publication of CN108509292A publication Critical patent/CN108509292A/zh
Application granted granted Critical
Publication of CN108509292B publication Critical patent/CN108509292B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1438Restarting or rejuvenating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0736Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in functional embedded systems, i.e. in a data processing system designed as a combination of hardware and software dedicated to performing a certain function
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H50/00ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics
    • G16H50/20ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for computer-aided diagnosis, e.g. based on medical expert systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/805Real-time
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/82Solving problems relating to consistency
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H40/00ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices
    • G16H40/40ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices for the management of medical equipment or devices, e.g. scheduling maintenance or upgrades

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Public Health (AREA)
  • Medical Informatics (AREA)
  • Biomedical Technology (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Pathology (AREA)
  • Epidemiology (AREA)
  • General Health & Medical Sciences (AREA)
  • Primary Health Care (AREA)
  • Debugging And Monitoring (AREA)
  • Hardware Redundancy (AREA)

Abstract

本发明公开了向软件组件应用恢复机制的***和方法。用于向多个软件组件应用恢复机制的***包括:多个医疗诊断器械,每个均与软件组件相关联;多个通信模块,每个与多个软件组件中的对应一个软件组件相关联,并被配置为对该对应一个软件组件进行报告;恢复模块,其被配置为:(i)获得来自多个通信模块的报告,该报告使得能够确定至少一个软件组件是否发生故障;(ii)根据至少一个发生故障的软件组件的优先级,重新加载至少一个发生故障的软件组件;(iii)向所有通信模块通知至少一个发生故障的软件组件的重新加载,其中,每个通信模块还被配置为重建该对应一个软件组件与至少一个重新加载的软件组件之间的连接。

Description

向软件组件应用恢复机制的***和方法
本申请是国际申请号为PCT/US2012/065855、申请日为2012年11月19日、中国专利申请号为201280066236.4、发明名称为“监控及恢复与医疗诊断器械相关联的软件组件”的发明专利申请的分案申请。
背景技术
1.技术领域
本发明涉及软件组件监视领域,更具体地,涉及监视及恢复与医疗诊断器械相关联的软件组件。
2.现有技术说明
当前的趋势是,为了监视和管理的目的,越来越多的诊断器械变为经由通信网络连接。正在处理的数据的一个特性在于其通常是私人医疗数据。该要求尤其看重数据安全性措施。另外,由于可能夜以继日地需要诊断器械,因此减少诊断器械的故障之间的平均时间会是有益的。
发明内容
本发明的一方面提供了一种用于向医疗诊断器械网络应用恢复机制的***。该***可包括以下部件:多个医疗诊断器械,每个医疗诊断器械均与网络连接的组件相关联;多个通信模块,每个通信模块均与多个网络连接的计算机软件组件中的对应的计算机软件组件相关联,其中,多个通信模块中的每一个被布置成对与对应的组件网络连接的发生故障的计算机软件组件进行报告;以及恢复模块,被配置成:(i)获得来自所述通信模块的报告;(ii)重建发生故障的计算机软件组件;以及(iii)向所有通信模块通知发生故障的计算机软件组件的重建,其中每个通信模块还被配置成重建多个计算机软件组件之一与所重建的计算机软件组件之间的连接。
本发明的另一方面提供了一种用于向多个计算机软件组件应用恢复机制的***,所述多个计算机软件组件控制医疗诊断,所述***包括:多个医疗诊断器械,每个医疗诊断器械与计算机软件组件相关联;多个通信模块,其中,所述多个通信模块中的每个通信模块与所述多个计算机软件组件中的对应一个计算机软件组件相关联,并且被配置为对所述计算机软件组件中的所述对应一个计算机软件组件进行报告;以及恢复模块,其被配置为:i)获得来自所述多个通信模块的报告,所述报告使得能够确定至少一个计算机软件组件是否发生故障;(ii)根据至少一个发生故障的计算机软件组件的优先级,重新加载所述至少一个发生故障的计算机软件组件;以及(iii)向所有通信模块通知所述至少一个发生故障的计算机软件组件的重新加载;其中,所述多个通信模块中的每个通信模块还被配置为重建所述多个计算机软件组件中的所述对应一个计算机软件组件与至少一个重新加载的计算机软件组件之间的连接。
本发明的另一方面提供了一种向控制医疗诊断器械的软件组件应用恢复机制的方法,所述方法包括:监视多个医疗诊断器械,每个医疗诊断器械经由多个通信模块与软件组件相关联;获得来自所述多个通信模块中的一个通信模块的报告,所述报告使得能够确定至少一个软件组件是否发生故障;根据获得的报告,确定所述至少一个软件组件发生故障;在分析所述获得的报告之后重新加载至少一个发生故障的软件组件,其中,根据所述至少一个发生故障的软件组件的优先级来执行所述至少一个发生故障的软件组件的重新加载;向所述多个通信模块中的所有通信模块通知所述至少一个发生故障的软件组件的重新加载;以及经由所述多个通信模块重建所述软件组件与至少一个重新加载的软件组件之间的连接。
在以下的详细描述中阐述本发明的这些、附加的和/或其他方面和/或优点,并且它们可以从详细描述中推断出来和/或通过实践本发明来学习。
附图说明
根据结合附图所进行的本发明的实施例的详细描述,将更容易理解本发明,在附图中:
图1A是根据本发明的一些实施例的联网组件环境下的恢复机制的高级示意性框图;
图1B是根据本发明的一些实施例的联网组件环境下的恢复机制的高级示意和详细框图;
图2A和图2B是示出根据本发明的一些实施例的方面的序列图;
图3A和图3B是示出根据本发明的一些实施例的其他方面的序列图;
图4是示出根据本发明的一些实施例的建立彼此之间的连接的框图;
图5是示出根据本发明的一些实施例的由CMP监控的两个组件在各层之间的通信的序列图;
图6是示出根据本发明的一些实施例当组件接收到服务请求时启动组件中的模块的序列图;以及
图7是示出根据本发明的一些实施例的通信类库的框图。
具体实施方式
在详细地说明本发明的至少一个实施例之前,应理解,本发明不限于适用于在以下描述中所阐述或者在附图中所示出的组件的构造和布置的细节。本发明可适用于其他实施例或者以各种方式实践或实现。此外,应理解,本文中所采用的短语和术语是出于描述的目的而不应当认为是进行限制。
为了更好地理解本发明,本公开中的以下术语的使用以非限制性方式定义:
本申请中此处使用的术语“组件”和“软件组件”被定义为包括业务逻辑、通信层、订阅管理器和服务组件的软件应用。
本申请中此处使用的术语“网络”被定义为使得能够在诸如上述组件的两个或更多个节点之间交换数据的基础架构。在非限制性的私人情况下,两个或更多个节点可存在于单个计算机上。
本申请中此处使用的术语“通信模块”被定义为与组件相关联且负责以下的模块:(i)报告与组件网络连接的其他组件的故障;以及(ii)重建所重建的组件与对应的组件之间的连接。
本申请中此处使用的术语“恢复模块”被定义为负责***中的组件的激活状态的模块。
本申请中此处使用的术语“配置管理器服务(CMS)”被定义为用于管理协作环境下工作流的过程的集合。这些过程可以是手动的或基于计算机的。
本申请中此处使用的术语“Windows通信框架(WCF)”被定义为.NET框架中的用于构建连接的、面向服务的应用的应用程序编程接口(API)。
本申请中此处使用的术语“WCF外观(WCF
Figure BDA0001592633890000041
)”被定义为允许WCF客户端访问正在服务的组件的服务。
本申请中此处使用的术语“是否激活调查(IsAlive poll)”被定义为从CMS中的组件的客户端发送到其对应组件的通信模块以便检查组件的激活状态的消息。
本申请中此处使用的术语“看门狗机制”被定义为负责每隔指定的时间段来检查组件的激活状态的机制。
本申请中此处使用的术语“业务逻辑模块”被定义为实际上向其他组件提供服务并且请求来自其他服务的服务的模块。
本申请中此处使用的术语“异常”被定义为当不满足正常流程图条件时程序所发出的消息。
本申请中此处使用的术语“方法调用”被定义为来自组件的用以执行任务的请求。
图1A是根据本发明的一些实施例的联网组件90A-90D的环境下的恢复机制100的高级示意性框图。恢复机制100可以包括多个通信模块110A-110D,每个通信模块均与联网组件90A-90D中的对应的一个联网组件相关联。每个通信模块110(例如,通信模块110A)被布置成对发生故障的组件(例如,经由对应的组件90A与通信模块110A联网的组件90B和90C)进行报告。另外,恢复机制100还可包括恢复模块120,恢复模块120被布置成:(i)从通信模块110A-110D获取报告;(ii)重建发生故障的组件,例如组件90B和90C;以及(iii)向所有通信模块110A-110D通知发生故障的组件(例如,组件90B和90C)的重建。
响应于通过恢复机制100的操作实现的重建,并且继续上述示例,可向通信模块110A-110D发送通知,并且通信模块110A-110D继而可重建它们对应的组件90A和90D与所重建的组件90B和90C之间的连接。另外,可根据作为恢复优先级的、组件的指定优先级列表130通过恢复模块120执行对发生故障的组件90B和90C的重建。
图1B示出在配置管理器服务(CMS)80的背景中以非限制示例实现的恢复机制的更详细表示,配置管理器服务80对以下内容进行管理:(i)组件150的信息;(ii)总体配置152;(iii)客户端和优先级的信息154;(iv)订阅者信息的应用156;以及(v)调查(poll)信息158。通信模块110A-110F与其对应的组件90A-90F之间的连接可经由WCF外观85A-85F实现,其中,WCF外观85A-85F可以向组件90A-90F提供简化的接口。可触发上述恢复处理以由以下部件操作:(i)CMS 80;(ii)任何组件90A-90F;和/或(iii)通信模块110F-110F。
表1示出了优先级的非限制性示例,并且本文中提供了待恢复的组件90A-90F的相关联集合。
发生故障的组件 优先级列表 恢复组件
90A 关键 全部
90B 中等 90B,90C
90C 中等 90C,90B
90D 90D
90E 90E
90F 90F,90B,90C
依照本发明的一些实施例,根据联网组件90A-90F之间的指定相互依赖性,可以通过按组重建发生故障的组件90A-90F来执行恢复,以快速地恢复与组件90A-90F的组相关联的功能性。
图2A示出了由CMS 80执行的“是否激活调查”200A。CMS 80本地或远程地为***中的每个组件保留一个客户端84(84A、84B等)。看门狗机制82可以每隔指定的时间段检查组件(这里未示出)的操作。例如,CMS 80可以每隔x分钟发送“是否激活调查”,其中x可经由配置来配置。CMS 80中的客户端84A可以从指示发生故障的组件的服务接收异常。
图2B示出了根据一个实施例的、通信模块之一110A对恢复模块的激活200B。作为对询问113(即对来自组件90B的服务的请求)的响应,任意组件90(例如,组件90B)可能向组件90A发出异常。因此,通信模块110A可以识别出相关联的组件90A接收到由组件90B发出的异常,并且作为发生故障的组件90B的指示向业务逻辑模块144及其通信层112(即,通信模块110A)通知其接收到异常。
然后,通信层112可以使用其对应的CMS客户端84向CMS 80通知:特定的服务提供商(即,发生故障的组件90B)发出异常。然后,CMS 80可启动恢复机制100。
结果,恢复模块120可尝试重新加载已损毁的发生故障的组件90B。在恢复模块120无法重新加载损毁的组件90B并且组件90B在优先级列表130中被指定为关键的情况下,恢复模块120激活对组件90B的终止操作。
另外,恢复机制100可使用组件的优先级列表130来利于基于优先级的恢复机制。恢复机制100可支持以下的分布:(i)在同一计算机上运行的本地组件;以及(ii)在网络上运行的分布式组件。
图3A是示出根据本发明的一些实施例的CMS 80对WCF环境的激活序列300A的序列图。CMS 80创建用于激活302 WCF外观85的客户端116。然后,WCF外观85创建业务逻辑模块114的实例和通信模块110的实例。因此,通信模块(这里未示出)创建客户端116以与CMS客户端(这里未示出)进行通信从而交换信息。然后,通信模块110可执行日志提供商代理306并在WCF外观服务85中创建日志客户端的实例。
图3B是示出根据本发明的一些实施例的CMS 80对WCF环境的终止序列300B的序列图。通过CMS 80将终止消息310发送到通信层112而开始终止操作304。作为响应,通信层112中的通信模块(这里未示出)将终止消息310发送到业务逻辑模块114。当业务逻辑模块114准备经由其通信层112终止时,业务逻辑模块114将响应发送到WCF外观服务85。然后,WCF外观服务85将准备终止消息118发送到通信模块110。作为响应,通信模块110将组件准备终止消息321发送到CMS 80。
图4是示出根据本发明的一些实施例的两个组件建立彼此之间的连接的框图。每个组件可以包括若干个客户端以向其他组件提供服务。例如,组件90A可经由客户端402B向另一组件90B提供服务,并且组件90B可经由客户端402A向组件90A提供服务。另外,每个组件均可包括针对CMS(这里未示出)的客户端,例如,组件90A中的CMS客户端404A和组件90B中的CMS客户端404B。组件90A可经由客户端404A检索配置信息,并且组件90B可经由CMS客户端404B检索配置信息。可检索的配置信息的示例是其他组件的服务端点(endpoint)。
图5是示出由CMS 80监控的两个组件90A与90B之间的订阅处理的序列图。根据本发明的一些实施例,订阅处理经由不同的层执行。当组件90A要求来自组件90B的服务时,可开始订阅处理。组件90A可以将登记请求消息502发送到CMS 80,并且可以检索是指使用CMS80的客户端所要求的服务的订阅管理器的端点。然后,CMS 80在通信层112中对组件90B的通信模块(这里未示出)创建具有登记请求的事件504。登记请求504是指所选择的服务。所发送的请求消息的类型是回调方法。然后,在组件90B中,通信模块(这里未示出)可重新打开订阅管理器模块520并且将登记请求506发送到订阅管理器模块520。所发送的请求消息的类型是方法调用。作为响应,订阅管理器模块520可以向组件90A中的客户端402B发送许可或拒绝通知508。该通知可以包括所选择的服务的端点。所发送的消息的类型是回调方法。在订阅管理器向组件90A发送许可消息的情况下,组件90A打开订阅者客户端510。所发送的请求消息的类型是回调方法。
图6是示出根据本发明的一些实施例的当组件接收到对于服务的请求时启动组件中的模块的序列图。CMS 80可以发送方法调用以激活订阅管理器模块520。CMS 80发送方法调用以激活WCF外观服务85。作为响应,WCF外观服务85可以调用服务默认构造器618。服务默认构造器618可以通过发送常规的方法调用来创建业务逻辑模块114的实例。另外,WCFFacade服务85可以在通信层112中创建实例并且传递业务逻辑实例114作为未来使用的自变量(argument)。
然后,通信层112可以创建客户端650以与CMS 80进行通信。通信层112可使用该客户端650来从CMS 80检索信息。可检索的信息是:(i)具有组件可能需要登记的所有订阅管理器服务的端点的订阅信息;(ii)具有可授权组件附接至其的所有服务的端点的客户端信息。基于从CMS 80得到的、从订阅管理器模块520检索608的信息,通信层112可以创建客户端624并且可发送订阅请求626。另外,通信层112可以基于从CMS 80得到的关于客户端的信息来创建用于所有服务的常规客户端622。然后,通信层112可以进行调用以初始化WCFFacade85中的用于附加初始化的方法。然后,通信层(这里未示出)可以向CMS 80通知组件被加载。
图7是示出根据本发明的一些实施例的通信类库的框图。通信类库允许每个组件与CMS(这里未示出)进行通信以:(i)检索与组件希望打开的客户端有关的信息;(2)在另一进程损毁的情况下得到通知;以及(3)得到组件重新加载的通知并且重新创建用于所重新加载的组件的客户端并且登记至其事件。通信类库允许每个组件将该组件登记至其他进程事件并且在其他进程服务时打开客户端。
在以上描述中,实施例是本发明的示例或实现。“一个实施例”、“实施例”或“一些实施例”的各种出现不一定都是指相同的实施例。
虽然在单个实施例的上下文中可描述本发明的各个特征,但是特征还可单独地或以任何适当组合提供。相反,虽然为了清楚而在本文中可以在单独实施例的上下文中描述本发明,但是本发明也可以在单个实施例中实现。
此外,应该理解,本发明可以各种方式实现或实践,并且本发明可以以除了在以上描述中所概述的实施例外的实施例来实现。具体地,本发明不限于那些附图或对应的描述。例如,流程不需要前进通过每个所示的框或状态,或者精确地以如所示和描述的相同顺序前进。取决于根据具体特征或示例的应用,本文中所描述的方法可通过各种手段来实现。例如,这样的方法可以以硬件、固件、软件、离散/固定逻辑电路、其组合等来实现。在硬件或逻辑电路实现中,例如,处理单元可在一个或多个专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理装置(DSPD)、可编程逻辑装置(PLD)、现场可编程栅阵列(FPGA)、处理器、控制器、微控制器、微处理器、电子装置、被设计为执行本文中所述的功能的其他装置或单元、或者其组合等内实现。
对于固件或软件实现,方法可利用具有执行本文中所描述的功能的指令的模块(例如,过程、功能等)来实现。可在实现本文中所描述的方法中使用实现指令的任何非暂态计算机和/或机器可读介质。例如,来自计算机程序产品或其他源的软件代码可存储在存储器中并由处理器执行。存储器可在处理器内或在处理器外部实现。如本文中所使用,术语“存储器”是指长期存储器、短期存储器、易失性存储器、非易失性存储器或其他存储器中的任意类型,并且不限于任何特定类型的存储器或者任何特定数量的存储器、或者储存有存储器的介质的类型。在至少一些实现中,本文中所描述的存储介质的一个或多个组件可存储代表由存储介质的特定主体表示的数据或信息的信号。例如,通过影响或改变存储介质的这样的部分的状态以将数据或信息表示为二进制信息(例如,1和0),代表数据或信息的电子信息可“存储”在存储介质(例如,存储器)的一部分中。同样,在具体实现中,存储代表数据或信息的信号的存储介质的部分的状态的改变构成存储介质向不同状态或事物的变换。
除非有相反定义,本文中所使用的技术和科技术语的含义通常为本发明所属的领域的普通技术人员所理解的那样。
尽管针对有限数量的实施例描述了本发明,但是这些不应解释为对本发明的范围的限制,而是解释为部分优选实施例的例示。其他可能的变化、变型和应用也在本发明的范围内。因此,本发明的范围不限于迄今为止描述的范围,而是由所附权利要求书及其合法等同方案限制。
此外,本发明也可以配置如下:
(1)一种用于向多个计算机软件组件应用恢复机制的***,所述多个计算机软件组件控制医疗诊断,所述***包括:
多个医疗诊断器械,每个医疗诊断器械均与计算机软件组件相关联;
多个通信模块,每个通信模块均与所述多个计算机软件组件中的对应的一个计算机软件组件相关联,其中所述多个通信模块中的每一个被布置成对发生故障的计算机软件组件进行报告;以及
恢复模块,其被配置为:
(i)获得来自所述通信模块的报告;
(ii)重建所述发生故障的计算机软件组件;以及
(iii)向所有通信模块通知所述发生故障的计算机软件组件的重建;
其中,每个通信模块还被配置为重建所述多个计算机软件组件中的对应的一个计算机软件组件与所重建的计算机软件组件之间的连接。
(2)根据(1)所述的***,其中,所述恢复模块还被配置为根据计算机软件组件的指定优先级列表重建所述发生故障的计算机软件组件。
(3)根据(1)所述的***,其中,所述恢复模块还被配置为根据指定规则在其它发生故障的计算机软件组件之前重建关键的发生故障的计算机软件组件。
(4)根据(1)所述的***,其中,所述恢复模块还被配置为根据网络连接的组件之间的指定相互依赖性,按组重建所述发生故障的计算机软件组件。
(5)根据(1)所述的***,其中,所述恢复模块还被配置为在一个或多个网络连接的计算机软件组件的重建失败时终止所述一个或多个网络连接的计算机软件组件的操作。
(6)根据(1)所述的***,其中,所述恢复模块还被配置为基于计算机软件组件的预定义优先级顺序执行所述通知。
(7)一种向控制医疗诊断器械的软件组件应用恢复机制的方法,所述方法包括:
监视多个医疗诊断器械,每个医疗诊断器械均经由多个通信模块与软件组件相关联;
在软件组件发生故障时,获得来自所述通信模块的报告;
在分析所述报告时,重建发生故障的软件组件;
向所有通信模块通知所述发生故障的软件组件的重建;以及
经由所述通信模块重建所述软件组件与所重建的软件组件之间的连接。
(8)根据(7)所述的方法,其中,根据软件组件的指定优先级列表来执行所述发生故障的软件组件的重建。
(9)根据(7)所述的方法,其中,根据指定规则执行所述发生故障的组件的重建,使得在其他发生故障的软件组件之前重建所述发生故障的软件组件。
(10)根据(7)所述的方法,其中,根据网络连接的软件组件之间的指定相互依赖性来执行所述发生故障的软件组件的重建。
(11)根据(7)所述的方法,还包括:在一个或多个网络连接的软件组件的重建失败时终止所述一个或多个网络连接的软件组件的操作。
(12)根据(7)所述的方法,其中,基于软件组件的预定义优先级顺序来执行所述通知。
(13)一种在非暂态计算机可读介质上实现的计算机程序产品,所述计算机程序产品包括:
用于监视与医疗器械相关联的软件组件的计算机代码,每个医疗器械均经由多个通信模块与软件组件相关联;
用于在软件组件发生故障时获得来自所述通信模块的报告的计算机代码;
用于在分析所述报告时重建发生故障的软件组件的计算机代码;
用于向所有通信模块通知所述发生故障的软件组件的重建的计算机代码;以及
用于经由所述通信模块重建所述软件组件与所重建的软件组件之间的连接的计算机代码。
(14)根据(13)所述的计算机程序产品,其中,根据组件的指定优先级列表来执行所述发生故障的软件组件的重建。
(15)根据(13)所述的计算机程序,其中,根据指定规则执行所述发生故障的软件组件的重建,使得在其他发生故障的软件组件之前重建所述发生故障的软件组件。
(16)根据(13)所述的计算机程序产品,其中,根据网络连接的软件组件之间的指定相互依赖性来按组执行所述发生故障的软件组件的重建。
(17)根据(13)所述的计算机程序产品,还包括:用于在一个或多个网络连接的软件组件的重建失败时终止所述一个或多个网络连接的软件组件的操作的计算机代码。
(18)根据(13)所述的计算机程序产品,其中,基于软件组件的预定义优先级顺序来执行所述通知。

Claims (14)

1.一种用于向多个计算机软件组件应用恢复机制的***,所述多个计算机软件组件控制医疗诊断,所述***包括:
多个医疗诊断器械,每个医疗诊断器械与计算机软件组件相关联;
多个通信模块,其中,所述多个通信模块中的每个通信模块与所述多个计算机软件组件中的对应一个计算机软件组件相关联,并且被配置为对所述计算机软件组件中的所述对应一个计算机软件组件进行报告;以及
恢复模块,其被配置为:
(i)获得来自所述多个通信模块的报告,所述报告使得能够确定至少一个计算机软件组件是否发生故障;
(ii)根据至少一个发生故障的计算机软件组件的优先级,重新加载所述至少一个发生故障的计算机软件组件,其中,所述优先级指定是否需要重新加载一个或多个额外的计算机软件组件;以及
(iii)向所有通信模块通知所述至少一个发生故障的计算机软件组件的重新加载,
其中,所述多个通信模块中的每个通信模块还被配置为重建所述多个计算机软件组件中的所述对应一个计算机软件组件与至少一个重新加载的计算机软件组件之间的连接。
2.根据权利要求1所述的***,其中,所述恢复模块被配置为通过在通信层创建用于向第二医疗诊断器械的另一计算机软件组件提供服务的客户端,来重新加载第一医疗诊断器械的至少一个发生故障的计算机软件组件。
3.根据权利要求1所述的***,其中,所述恢复模块还被配置为根据指定规则在其它发生故障的计算机软件组件之前重新加载关键的发生故障的计算机软件组件。
4.根据权利要求1所述的***,其中,所述恢复模块还被配置为根据网络连接的组件之间的指定相互依赖性,按组重新加载发生故障的计算机软件组件。
5.根据权利要求1所述的***,其中,所述恢复模块还被配置为在一个或多个网络连接的计算机软件组件的重新加载失败时终止所述一个或多个网络连接的计算机软件组件的操作。
6.根据权利要求1所述的***,其中,所述恢复模块还被配置为基于计算机软件组件的预定义优先级顺序来执行所述通知。
7.根据权利要求1所述的***,其中,所述恢复模块还被配置为通过确定重新加载所述至少一个发生故障的计算机软件组件的顺序的指示,根据所述至少一个发生故障的计算机软件组件的优先级来重新加载所述至少一个发生故障的计算机软件组件。
8.一种向控制医疗诊断器械的软件组件应用恢复机制的方法,所述方法包括:
监视多个医疗诊断器械,每个医疗诊断器械经由多个通信模块与软件组件相关联;
获得来自所述多个通信模块中的一个通信模块的报告,所述报告使得能够确定至少一个软件组件是否发生故障;
根据获得的报告,确定至少一个软件组件发生故障;
在分析所述获得的报告之后重新加载至少一个发生故障的软件组件,其中,根据所述至少一个发生故障的软件组件的优先级来执行所述至少一个发生故障的软件组件的重新加载,其中,所述优先级指定是否需要重新加载一个或多个额外的计算机软件组件;
向所述多个通信模块中的所有通信模块通知所述至少一个发生故障的软件组件的重新加载;以及
经由所述多个通信模块重建所述软件组件与至少一个重新加载的软件组件之间的连接。
9.根据权利要求8所述的方法,其中,重新加载第一医疗诊断器械的发生故障的软件组件包括:在通信层创建用于向第二医疗诊断器械的另一软件组件提供服务的客户端。
10.根据权利要求8所述的方法,其中,重新加载所述至少一个发生故障的软件组件包括:根据指定规则重新加载多个发生故障的软件组件,使得重新加载所述多个发生故障的软件组件中的一个软件组件,之后重新加载所述多个发生故障的软件组件中的其它软件组件。
11.根据权利要求8所述的方法,其中,根据网络连接的软件组件之间的指定相互依赖性来执行所述至少一个发生故障的软件组件的重新加载。
12.根据权利要求8所述的方法,还包括:在一个或多个网络连接的软件组件的重新加载失败时终止所述一个或多个网络连接的软件组件的操作。
13.根据权利要求8所述的方法,其中,基于软件组件的预定义优先级顺序来执行所述通知。
14.根据权利要求8所述的方法,其中,所述至少一个发生故障的软件组件的优先级包括重新加载所述至少一个发生故障的软件组件的顺序的指示。
CN201810194336.4A 2011-12-06 2012-11-19 向软件组件应用恢复机制的***和方法 Active CN108509292B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US13/311,971 US9489251B2 (en) 2011-12-06 2011-12-06 Supervising and recovering software components associated with medical diagnostics instruments
US13/311,971 2011-12-06
CN201280066236.4A CN104067264B (zh) 2011-12-06 2012-11-19 监控及恢复与医疗诊断器械相关联的软件组件
PCT/US2012/065855 WO2013085708A1 (en) 2011-12-06 2012-11-19 Supervising and recovering software components associated with medical diagnostics instruments

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201280066236.4A Division CN104067264B (zh) 2011-12-06 2012-11-19 监控及恢复与医疗诊断器械相关联的软件组件

Publications (2)

Publication Number Publication Date
CN108509292A CN108509292A (zh) 2018-09-07
CN108509292B true CN108509292B (zh) 2022-03-29

Family

ID=48524889

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201810194336.4A Active CN108509292B (zh) 2011-12-06 2012-11-19 向软件组件应用恢复机制的***和方法
CN201280066236.4A Active CN104067264B (zh) 2011-12-06 2012-11-19 监控及恢复与医疗诊断器械相关联的软件组件

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN201280066236.4A Active CN104067264B (zh) 2011-12-06 2012-11-19 监控及恢复与医疗诊断器械相关联的软件组件

Country Status (4)

Country Link
US (2) US9489251B2 (zh)
EP (1) EP2788892B1 (zh)
CN (2) CN108509292B (zh)
WO (1) WO2013085708A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105700965A (zh) * 2014-11-26 2016-06-22 英业达科技有限公司 ***错误排除方法
CN106528283B (zh) * 2016-10-10 2019-08-02 北京小米移动软件有限公司 程序恢复方法及装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101583022A (zh) * 2009-06-11 2009-11-18 中兴通讯股份有限公司 视频监控客户端播放方法和***
CN102025530A (zh) * 2010-08-09 2011-04-20 哈尔滨工程大学 一种面向MVC架构下Web***的分级自恢复方法

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3072048B2 (ja) * 1996-03-19 2000-07-31 株式会社東芝 計算機システムおよび計算機システムのソフトウェア故障回復方法
US5790772A (en) * 1996-04-30 1998-08-04 International Business Machines Corporation Communications method involving groups of processors of a distributed computing environment
US5787249A (en) * 1996-04-30 1998-07-28 International Business Machines Coporation Method for managing membership of a group of processors in a distributed computing environment
US5991821A (en) * 1996-04-30 1999-11-23 International Business Machines Corporation Method for serializing actions of independent process groups
US6763369B1 (en) * 1999-07-13 2004-07-13 Interactive Intelligence, Inc. Hierarchical process management in an intelligent call processing system
GB2353113B (en) * 1999-08-11 2001-10-10 Sun Microsystems Inc Software fault tolerant computer system
US6668051B1 (en) * 2000-03-28 2003-12-23 Sevis Systems, Inc. Intelligent communications point platform
US7254747B2 (en) 2003-03-28 2007-08-07 General Electric Company Complex system diagnostic service model selection method and apparatus
US7380169B2 (en) * 2004-09-24 2008-05-27 Intel Corporation Converting merge buffer system-kill errors to process-kill errors
US20060149837A1 (en) 2004-12-17 2006-07-06 General Electric Company Remote monitoring and diagnostics service prioritization method and system
US7483744B2 (en) * 2005-05-05 2009-01-27 Cardiac Pacemakers, Inc. System and method for recovering from transient faults in an implantable medical device
US7363080B2 (en) * 2005-05-05 2008-04-22 Cardiac Pacemakers, Inc. System and method for providing bradycardia therapy by implantable device in presence of system faults
US7689873B1 (en) 2005-09-19 2010-03-30 Google Inc. Systems and methods for prioritizing error notification
US20070174655A1 (en) * 2006-01-18 2007-07-26 Brown Kyle G System and method of implementing automatic resource outage handling
US20070253021A1 (en) 2006-04-28 2007-11-01 Medtronic Minimed, Inc. Identification of devices in a medical device network and wireless data communication techniques utilizing device identifiers
US7942844B2 (en) * 2006-04-28 2011-05-17 Medtronic Minimed, Inc. Remote monitoring for networked fluid infusion systems
US8073008B2 (en) * 2006-04-28 2011-12-06 Medtronic Minimed, Inc. Subnetwork synchronization and variable transmit synchronization techniques for a wireless medical device network
US7624309B2 (en) 2007-01-16 2009-11-24 Microsoft Corporation Automated client recovery and service ticketing
US20100023798A1 (en) 2008-07-25 2010-01-28 Microsoft Corporation Error recovery and diagnosis for pushdown automata
DE102008036654A1 (de) 2008-08-06 2010-04-15 Siemens Aktiengesellschaft Verfahren und System zum Verwalten von Meldungen eines elektronischen Geräts
US9283339B2 (en) * 2009-05-18 2016-03-15 Zoll Medical Corporation Life support and monitoring apparatus with malfunction correction guidance
US10135849B2 (en) * 2012-03-16 2018-11-20 Purdue Research Foundation Securing medical devices through wireless monitoring and anomaly detection

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101583022A (zh) * 2009-06-11 2009-11-18 中兴通讯股份有限公司 视频监控客户端播放方法和***
CN102025530A (zh) * 2010-08-09 2011-04-20 哈尔滨工程大学 一种面向MVC架构下Web***的分级自恢复方法

Also Published As

Publication number Publication date
US20170031766A1 (en) 2017-02-02
CN104067264A (zh) 2014-09-24
WO2013085708A1 (en) 2013-06-13
EP2788892A1 (en) 2014-10-15
CN108509292A (zh) 2018-09-07
EP2788892A4 (en) 2015-09-02
US20130145204A1 (en) 2013-06-06
US9489251B2 (en) 2016-11-08
CN104067264B (zh) 2018-04-10
US10049013B2 (en) 2018-08-14
EP2788892B1 (en) 2019-05-08

Similar Documents

Publication Publication Date Title
KR101888029B1 (ko) 가상 머신 클러스터 모니터링 방법 및 모니터링 시스템
EP1654645B1 (en) Fast application notification in a clustered computing system
US9628557B2 (en) Peer-to-peer exchange of data resources in a control system
CN109271331A (zh) 日志的生成方法、装置、计算机设备及存储介质
CN104104547B (zh) 一种网络设备配置文件的管理方法及网络控制器
CN107302465A (zh) 一种PCIe Switch服务器整机管理方法
US9164864B1 (en) Minimizing false negative and duplicate health monitoring alerts in a dual master shared nothing database appliance
CN112955874A (zh) 在使用区块链的机器学习的去中心化模型构建中进行自修复的***及方法
US11228486B2 (en) Methods for managing storage virtual machine configuration changes in a distributed storage system and devices thereof
CN103488526A (zh) 在分布式***中锁定业务资源的***和方法
CN110830283A (zh) 故障检测方法、装置、设备和***
CN106357430A (zh) 一种云计算集群服务状态监控方法和***
CN108509292B (zh) 向软件组件应用恢复机制的***和方法
Trivedi et al. System availability assessment using stochastic models
JP2012043121A (ja) 運用管理システム、運用管理方法及び運用管理装置
CN114138568A (zh) Redis哨兵模式下客户端故障转移的调度方法及***
CN103297279A (zh) 一种多软件进程***上软件控制的主备单盘倒换方法
US11824782B2 (en) Rate limiter for database access
US20090300436A1 (en) Synchronizing device error information among nodes
US9973569B2 (en) System, method and computing apparatus to manage process in cloud infrastructure
CN112612604B (zh) 基于Actor模型的任务调度方法、装置
CN106850283B (zh) 一种基于事件驱动的云ac告警处理***及方法
CN104516790A (zh) 一种分布式环境下检查点记录和恢复的***及方法
CN112328445B (zh) 一种基于consul的多节点管理***
JP2013003956A (ja) 故障復旧管理装置、故障復旧管理方法及び故障復旧管理プログラム

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant