CN103180832B - 计算机系统和数据处理方法 - Google Patents
计算机系统和数据处理方法 Download PDFInfo
- Publication number
- CN103180832B CN103180832B CN201180050994.2A CN201180050994A CN103180832B CN 103180832 B CN103180832 B CN 103180832B CN 201180050994 A CN201180050994 A CN 201180050994A CN 103180832 B CN103180832 B CN 103180832B
- Authority
- CN
- China
- Prior art keywords
- mentioned
- computer node
- data
- leading
- node
- 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.)
- Expired - Fee Related
Links
- 238000003672 processing method Methods 0.000 title claims description 3
- 238000000034 method Methods 0.000 claims description 86
- 238000001514 detection method Methods 0.000 claims description 46
- 238000004891 communication Methods 0.000 claims description 25
- 230000005055 memory storage Effects 0.000 description 12
- 230000006870 function Effects 0.000 description 9
- 238000007726 management method Methods 0.000 description 9
- 238000013500 data storage Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 8
- 230000015654 memory Effects 0.000 description 7
- 230000002093 peripheral effect Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 230000001360 synchronised effect Effects 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 230000000142 dyskinetic effect Effects 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005755 formation reaction Methods 0.000 description 1
- 230000009897 systematic effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/18—Error detection or correction of the data by redundancy in hardware using passive fault-masking of the redundant circuits
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/1675—Temporal synchronisation or re-synchronisation of redundant processing components
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/18—Error detection or correction of the data by redundancy in hardware using passive fault-masking of the redundant circuits
- G06F11/187—Voting techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/815—Virtual
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Hardware Redundancy (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
实现在多个计算机中同步地执行多个任务的计算机系统。主导计算机和跟随计算机分别执行同一任务,主导计算机根据由第1任务请求的第1访问请求来生成第1输出数据,并向跟随计算机询问第1执行结果是否正确,当从预定数量的上述跟随计算机得到了正确的意思的答复时,判断为第1输出数据正确,跟随计算机根据由与第1任务进行同样处理的第2任务请求的第2访问请求来生成第2输出数据,跟随计算机接受来自主导计算机的询问,判定第1执行结果和第2输出数据是否是同样的结果,判定结果是肯定时,向上述主导计算机发送第1输出数据是正确的意思的答复。
Description
技术领域
本发明涉及计算机系统,特别是涉及容错系统(fault-tolerantsystem)的技术。
背景技术
设计成即使系统的一部分产生问题也不会使整体停止发挥功能而继续动作的计算机系统称为容错系统(以下称为“FT系统”)(专利文献1)。FT系统一般由多个计算机构成,通过使各计算机执行同一动作来提高耐障碍性。
作为实现FT系统的技术具有“时钟同步方式”。在“时钟同步方式”中,针对每个动作步骤在各计算机之间交换信息。由此,能够在各计算机之间使动作步骤同步。
此外,作为实现FT系统的另一技术具有“虚拟计算机同步方式”。在“虚拟计算机同步方式”中,在一方虚拟计算机上执行操作系统(operatingsystem)(以下称为“OS”)。从该OS向其他虚拟计算机转发对一方虚拟计算机上的虚拟设备等的访问信息。由此,使各虚拟计算机全部以同一方式动作(专利文献2)。
实现FT系统的又一技术还具有“任务(task)同步方式”。在“任务同步方式”中,将应用软件(以下称为“应用”)分割为称为任务(例如,进程(process)或线程(thread))的单位。并且,在各计算机同步地执行同一任务(专利文献3)。
另外,还公知了如下内容:当各计算机的输出不一致时,遵照多数决定选择输出并输出到外部(专利文献1)。
现有技术文献
专利文献
专利文献1:日本特开平8-314744号公报
专利文献2:US2010/0107158
专利文献3:日本特开2009-217503号公报
发明内容
发明要解决的课题
“时钟同步方式”需要使各处理器(processor)的动作步骤同步。因此,需要通过专用硬件来观测并控制各处理器的动作步骤。但是,近年处理器被高集成化,周边芯片的功能也被统一到处理器中。观测并控制这样复杂的结构的处理器的动作步骤很困难。“时钟同步方式”中,因为每当处理器执行动作步骤时需要进行同步处理时,所以在动作时钟高的处理器中同步处理的开销(overhead)大。
“虚拟计算机同步方式”在虚拟计算机具有多个虚拟处理器时会产生问题。例如,不得不使一方虚拟计算机中的各虚拟处理器间的动作步骤的关系、和另一方虚拟计算机中的其他各虚拟处理器间的动作步骤的关系完全一致。但是,使其完全一致是困难的。
“任务同步方式”中,在计算机具有多个处理器时也会产生问题。例如,在各计算机中,假定在第1处理器来执行任务A,在第2处理器来执行任务B。并且,假定一方计算机的任务A的执行时刻比另一方计算机的任务A的执行时刻早。这时,在一方计算机中任务A将数据写入存储器后任务B从存储器读出数据。另一方面,在另一方计算机中,在任务A将数据写入存储器前任务B就从存储器读出数据。因此,在一方计算机和另一方计算机中,任务B的执行结果不同,由此在计算机间输出可能不同。
所以,本发明的目的是提供一种计算机系统,能够在多个计算机同步执行多个任务。
用于解决课题的手段
遵照本发明的一实施方式的计算机系统是多个计算机节点经通信网络而连接的计算机系统,其特征在于,多个计算机节点中的1台计算机节点是主导计算机节点,多个计算机节点中的除上述主导计算机节点以外的其他计算机节点是跟随计算机节点,主导计算机节点和上述跟随计算机节点分别执行同一任务,主导计算机节点和跟随计算机节点分别具有:通信接口部,其经通信网络而与其他计算机节点进行通信;存储部,其用于存储数据;访问执行部,其根据上述任务执行对上述存储部的访问请求;以及输出判定部,其在所述访问请求为对终端的输出的情况下,判定输出数据是否正确,主导计算机节点在本节点的外部访问执行部中,根据由第1任务请求的第1访问请求来生成第1输出数据,主导计算机节点在本节点的输出判定部中,向跟随计算机节点询问第1输出数据是否正确,当从预定数量的上述跟随计算机节点得到了正确的意思的答复时,判断为第1输出数据正确,跟随计算机节点在本节点的外部访问执行部中,根据由与第1任务进行同样的处理的第2任务请求的第2访问请求来生成第2输出数据,跟随计算机节点在本节点的输出判定部中,接受来自主导计算机节点的询问,判定第1输出数据和第2输出数据是否是同样的数据,在判定结果为肯定时,向主导计算机节点发送第1输出数据正确的意思的答复。
由此,能够实现这样的计算机系统:在多个计算机节点能够同步地执行多个任务。
附图说明
图1是表示第1实施方式的FT系统的结构的一个示例图。
图2是表示任务请求信息的数据结构的一个示例的图。
图3是表示访问信息的数据结构的一个示例的图。
图4是表示访问信息管理表的数据结构的一个示例的图。
图5是表示输入信息的数据结构的一个示例的图。
图6是表示输出管理表的数据结构的一个示例的图。
图7是表示输出信息的数据结构的一个示例的图。
图8是表示输出正确与否信息的数据结构的一个示例的图。
图9是执行任务时的流程图的一个例子。
图10是表示各计算机节点(node)的任务经访问执行部访问数据存储部时的时序的图的一个示例。
图11是表示作为主导(leader)的计算机节点从外部终端接收数据时的时序的图的一个示例。
图12是表示作为主导的计算机节点向外部终端发送数据时的时序的图的一个示例。
图13是表示访问执行部的处理的一个示例的流程图。
图14是表示外部访问执行部从外部终端接收数据的处理流程的一个示例的图。
图15是表示外部访问执行部向外部终端发送数据的处理流程的一个示例的图。
图16是表示追随可否信息的数据结构的一个示例的图。
图17是表示第2实施方式的访问信息管理表的一个示例的图。
图18是表示第2实施方式的跟随(follower)的访问执行部的处理流程的一个示例的图。
图19是表示将有可能障碍的计算机节点从FT系统分离的处理流程的图。
图20是表示第3实施方式的外部访问执行部的处理流程的一个示例的图。
图21是表示第4实施方式的主导的输出数据的正确与否判定的处理流程的一个示例的图。
具体实施方式
(第1实施方式)
在本实施方式中,如下所述,成为主导的计算机和成为跟随的计算机分别执行同一任务。主导的计算机针对自身的任务输出数据向跟随的计算机进行询问。对主导的计算机的执行结果和跟随的计算机的输出数据进行比较,来判断能否输出。
图1是表示FT系统1的结构的一个示例的图。FT系统1由多台(例如3台)计算机节点10A、10B、10C构成。计算机节点的数量不限于3,也可以是2或4以上。
FT系统1将构成该FT系统1的计算机节点10中的一台设为主导、将其他的计算机节点10设为设为跟随。FT系统1正常运行中,主导的计算机节点10和跟随的计算机节点10不会替换。但是,例如,在主导的计算机节点10有可能产生某种障碍时,跟随的计算机节点10中的一台成为新主导,FT系统1继续处理。此外,将有可能产生某种障碍的计算机节点10从FT系统1中分离。由此,实现耐障碍性高的FT系统1。
另外,在本实施方式中,将计算机节点10A作为主导,将计算机节点10B和10C作为跟随。以下,将计算机节点10A简称为“主导10A”,分别将计算机节点10B和10C简称为“跟随10B”和“跟随10C”。还存在将跟随10B和跟随10C合并称为“跟随10”的情况。
FT系统1例如经LAN(LocalAreaNewtork)或因特网等通信网络16,与1台以上的终端2连接。并且,FT系统1与终端2进行数据的收发。这里,所谓数据例如是,表示各终端2的状态的信息的通知,或者是针对对方的动作的请求等。
计算机节点10具有:存储器11、一个以上的处理器12、外部通信接口(以下称为“I/F”)14、以及节点通信I/F15。
存储器11是能够读出和写入数据的易失性存储介质,从处理器12访问存储器11。存储器11例如由DRAM(DynamicRandomAccessMemory)等构成。
处理器12从存储装置13等读出应用20和基础软件30等程序,并在存储器11展开,执行该程序。另外,一个计算机节点10也可以有多个处理器12。
外部通信I/F14是用于计算机节点10经通信网络16与终端2进行数据的收发的I/F。节点通信I/F15是计算机节点10之间用于收发数据的I/F。另外,外部通信I/F14和节点通信I/F15不需要分别设置,可以由一个通信I/F进行外部通信和节点通信I/F的两种通信。外部通信I/F14和节点通信I/F15例如由以以太网(ethernet)(注册商标)为标准的I/F等构成。
存储装置13是能够存储数据的非易失性存储介质,从处理器12等访问存储装置13。在存储装置13中存储有在计算机节点10执行的应用20和基础软件30等各种程序和数据。存储装置13例如由HDD(HardDiskDrive,硬盘驱动器)或闪存(flashmemory)等构成。
接下来,对用处理器12来执行的应用20和基础软件30进行说明。
应用20是用于实现FT系统1提供的功能的计算机程序。应用20由一个以上的任务21构成。任务21可以具有不被基础软件30或其他任务21参照的固有的存储区域。并且,构成FT系统1的计算机节点10分别具有相同的应用20。即,相同的应用20分别在构成FT系统1的多个计算机节点10中执行。
基础软件30是能够进行多重任务(multitask)处理的OS,能够并列地执行多个任务21。基础软件30对任务21提供:对存储装置13的访问功能、经外部通信I/F14与终端2进行通信的功能、以及确保和释放存储器30的预定区域功能等。基础软件30例如具有:调度器(scheduler)31、任务请求受理部32、输出判定部33、追随判定部34、访问信息管理表35、访问执行部36、数据存储处理部37、外部访问执行部38、以及输出管理表39。
图2是表示任务请求信息40的数据结构的一个示例的图。任务请求受理部32从任务21收到图2所示那样的任务请求信息40,并将其请求内容传送给访问执行部36。在任务请求信息40中记载有任务21访问数据存储部37时的请求。在任务请求信息40中例如图2所示记载有:访问对象信息41、访问种类42、数据大小43、以及数据内容44。
访问对象信息41是用于识别任务21的访问对象(即,数据的读出目的地,或数据的写入目的地)的信息。例如,访问对象信息41还可以是表示存储器11的预定存储区域的地址,还可以是成为访问对象的存储装置的标识符,还可以是表示存储装置的预定的存储区域的标识符,或者也可以是其组合。此外,访问对象是经通信网络16连接的终端2时,访问对象信息41还可以是表示终端2的IP地址和端口号码,也可以是在计算机节点10内用于唯一识别IP地址和端口号码的组合的会话(session)标识符。
访问种类42是用于识别任务的请求是读出(read)数据还是写入(write)数据的信息。访问种类42是“write”时,在数据大小43以及数据内容44中分别记载写入数据的数据大小和数据的内容。
图3是表示访问信息50的数据结构的一个示例的图。访问执行部36生成用于向其他计算机节点10传送任务请求信息40的访问信息50。并且,访问执行部36对数据存储部37的数据进行访问。在访问信息50中例如图3所示记载有:访问对象标识符51、计算机节点标识符52、任务标识符53、序号54、状态变化标记55、以及验证用信息56。
访问对象标识符51是由任务请求信息40所具有的访问对象信息41以及数据大小43唯一决定的标识符。访问对象标识符51例如还可以由访问对象信息41所包含的访问对象存储装置名、存储区域名、或作为访问对象的通信目的地的装置的标识符(例如,主机名,或IP地址等)决定。此外,在访问对象存储区域分割为多个区域时,访问对象标识符51也可以由赋予分割出的各个存储区域的标识符决定。
计算机节点标识符52是用于唯一识别生成了访问信息50的计算机节点10的标识符。例如,因为图3所示的计算机节点标识符52是“A”,所以可知该访问信息50是由主导10A生成的信息。
任务标识符53是用于唯一识别任务21标识符,该任务21为执行访问信息50的主体。例如,因为图3所示的任务标识符53是“T1”,所以可知由任务T1来执行该访问信息50。
序号54是用于表示在访问信息50在自己的计算机节点10中被执行的顺序的值。基本来说,从序号小的访问信息50开始按顺序来执行。例如,由于图3所示的序号54是93,所以基本来说,先执行序号比其小的访问信息50。
状态变化标记55是表示访问信息50的执行是否使访问对象的状态变化的信息。例如,当从数据存储部37读出数据的读访问(readaccess)时,由于数据存储部37的数据没有变化,所以状态变化标记55是“无”。另一方面,当向数据存储部37写入数据的写访问(writeaccess)时,或者是向终端2发送数据的访问时,状态变化标记55是“有”。
验证用信息56记载有这样的数据:用于在各计算机节点10中,验证由同一任务21交给的任务请求信息40是相同的。例如,当任务请求信息40是请求“写入”的信息时,在验证用信息56中记载有任务请求信息40的数据内容44,或者,数据内容44的错误检测符号数据等。
图4是表示访问信息管理表35的数据结构的一个示例的图。访问信息管理表35将主导访问信息52A和跟随访问信息52B对应起来进行管理。所谓主导访问信息52A是从主导10A的访问执行部36发送的访问信息。所谓跟随访问信息52B是在跟随10的访问执行部36生成的访问信息。
主导访问信息52A例如具有:任务标识符53A、序号54A、状态变化标记55A、验证用信息56A、以及自节点执行信息57。跟随访问信息52B例如具有:任务标识符53B、序号54B、状态变化标记55B、以及验证用信息56B。
访问信息管理表35针对主导10A和跟随10B(或跟随10C),由同一任务21生成的访问信息50对应起来进行管理。例如,图4是跟随10B的访问信息管理表35的一个例子。可知记载于同一行的主导访问信息52A和跟随访问信息52B是对应关系。
通过访问对象标识符51和任务标识符52是否都是相同的来判断对应关系。例如在图4中,访问对象标识符51是“R1”、且任务标识符53A是“T1”的主导访问信息52A与跟随访问信息52B是对应关系。
访问信息管理表35将主导访问信息52A和跟随访问信息52B按每个相同访问对象标识符51分组来进行管理。并且,访问信息管理表35在访问对象标识符51的组内按主导访问信息52的序号从小到大的顺序进行管理。
在自节点执行信息57中记载有该行所记载的跟随访问信息52B是否执行完毕。例如如图4所示那样的、跟随访问信息52B的序号“38”的执行完毕时,在同一行的自节点执行信息57中记载有其序号“38”。访问执行部36通过参照自节点执行信息57能够知道哪个跟随访问信息52B执行完毕。由于主导访问信息52A按序号从小到大的顺序排列,所以与其是对应关系的跟随访问信息52B也按与其相同的顺序排列。因此,访问执行部36通过参照自节点执行信息57能够知道到时序(sequence)的哪个阶段的跟随访问信息52B为止执行完毕。
图5是表示输入信息60的数据结构的一个示例的图。主导10A尝试了从终端2接收数据时,外部访问执行部38生成将该执行结果和接收到的数据内容传送给跟随10的输入信息60。
在输入信息60中例如如图5所示记载有:访问对象标识符51、外部访问序号62、输入结果标记63、数据大小64、以及数据内容65。外部访问执行部38在接收数据成功时将“成功”记载到输入信息60的输入结果标记63中,失败时将“失败”记载到输入信息60的输入结果标记63中。当接收数据成功时,外部访问执行部38将接收的数据的数据大小和数据内容分别记载到数据大小64和数据内容65。
外部访问执行部38将数据发送给终端2时,将图7所示的输出信息70存储到图6所示的输出管理表39中。输出信息70中例如如图7所示记载有:访问对象标识符51、外部访问序号62、以及核对数据74。因为访问对象标识符51以及外部访问序号62与图5相同所以省略说明。核对数据74中例如记载主导10A的输出数据。
图6是表示输出管理表39的数据结构的一个示例的图。输出管理表39中例如如图6所示记载有:访问对象标识符51、外部访问序号62、数据大小64、以及数据内容65。主导10A的输出管理表39中还记载有正确与否标记81,该正确与否标记81表示跟随10对主导10A的输出数据的正确与否的判定。跟随的输出管理表39不包含正确与否标记。
图7是表示输出信息70的数据结构的一个示例的图。图8是表示输出正确与否信息80的数据结构的一个示例的图。
主导10A的输出判定部33在向终端2发送记载于输出管理表39的预定输出数据前,将输出信息70发送到跟随10。主导10A的输出判定部33从跟随10接收例如图8所示那样的作为输出信息70的验证结果的输出正确与否信息80,并根据该验证结果判定是否向终端2发送上述预定的输出数据。
返回到图1。数据存储部37根据来自访问执行部36的请求,将数据写入存储器11或存储装置13的预定区域,或从存储器11或存储装置13的预定区域读出数据。数据存储部37还可以起到作为高速缓冲存储器(cachememory)的作用。
调度器31控制多个任务21的执行顺序。调度器31例如以预定的时间间隔来切换执行的任务21。当产生比执行中的任务优先级高的任务21时,调度器31使该优先级高的任务21先执行。
追随判定部34判定跟随10B或跟随10C是否能够追随主导10A。例如,当跟随10B的输出数据和主导10A的输出数据不同时,跟随10B对主导10A通知表示不能追随的意思的信息。
主导10A的追随判定部34从少数跟随收到表示不能够追随的信息时,能够判定为在该少数跟随中可能产生了某种障碍。另一方面,主导10A的追随判定部34当从多数跟随收到表示不能够追随的信息时,能够判定为主导10A本身可能产生了某种障碍。
图9是表示执行任务21的处理的流程图的一个示例。调度器31选择执行的任务21(S101)。开始执行选择出的任务21(S102)。在任务21的执行中产生了对存储装置13或终端2的访问请求时,任务21将任务请求信息40交给任务请求受理部32,请求执行访问处理(S103)。
这里,任务请求受理部32没有收到任务请求信息40时(S104:否),前进到步骤S106。
任务请求受理部32从任务21收到任务请求信息40时(S104:是),调度器31判断能否在预定时间内完成记载于任务请求信息40的处理(S105)。
当调度器31判断为能够在预定时间内完成该处理时(S105:是),前进到步骤S106。
另一方面,当调度器31判断为不能在预定时间内完成该处理时(S105:否),调度器31暂时中断该处理。然后,调度器31返回到步骤S101,选择并执行其他的任务21。
对任务请求受理部32没有收到任务请求信息40时(S104:否),或者,调度器31判断为能够在预定时间内完成记载于任务请求信息40的处理时(S105:是)进行说明。这时,调度器31判断当前执行中的任务21是否是最优先的任务(S106)。
当前执行中的任务21是最优先的任务时(S106:是),返回到步骤S103,继续该处理。
当前执行中的任务21不是最优先的任务时(S106:否),返回到步骤S101,选择并执行其他的任务21。所谓当前执行中的任务21不是最优先的情况例如是当前执行中的任务21的连续执行时间为预定时间以上的情况,或者是能够执行比当前执行中的任务优先级高的任务的情况。
另外,当计算机节点10具有多个处理器12时,在各处理器12中分别执行这些动作。
各处理器12执行调度器31的时刻未必相同。因此,在计算机节点10之间只不进行“时钟同步”,各计算机节点10之间无法使各处理器12的动作完全一致。例如,当各计算机节点10的处理器内的高速缓存(cache)动作不同时,有时相同任务21的开始时刻错开。此外,当各计算机节点10的基础软件30的内部状态不同时,有时任务21的执行结果不一致。
但是,在实现FT系统1时不允许各计算机节点10执行的任务21发生致命的执行结果的不一致。
所谓致命的执行结果的不一致例如是:尽管在多个计算机节点10之间执行了同一任务21,但是各计算机节点10做出不同的判定,成为各自不同的执行结果,进行不同的输出的情况等。因此,在本实施方式中,在多个计算机节点10执行相同任务21时,不会引起致命的执行结果的不一致。
图10是表示各计算机节点10的任务21访问数据存储部37时的时序的例子。在本例中,在主导10A中,在任务21A之后若任务21a不访问数据存储部37,则数据产生不匹配。另外,在跟随10B和10C中也是同样。
首先,对访问执行部36A的基于在主导10A执行的任务21A和21a的任务请求信息40的处理进行说明。从任务21A受理了第1任务请求信息40的访问执行部36A生成与第1任务请求信息40相对应的第1访问信息50(S10a)。访问执行部36A向跟随10B的访问执行部36B、和跟随10C的访问执行部36C发送该第1访问信息50(S11a、S12a)。接下来访问执行部36A根据该任务请求信息40来访问数据存储部37A的预定数据(S13a)。
然后,从任务21a受理了第2任务请求信息40的访问执行部36A生成与第2任务请求信息40相对应的第2访问信息50(S20a)。以后,访问执行部36A与上述的任务21A中所描述的S11a~S13a同样地访问存储装置13(S21a~S23a)。
即,在主导10A执行的访问执行部36A向跟随10B的访问执行部36B和跟随10C的访问执行部36C发送用于执行同一处理的访问信息50。
接下来,对访问执行部36B的基于在跟随10B执行的任务21B以及21b的任务请求信息40的处理进行说明。这里,将跟随10B的访问执行部称为访问执行部36B,将跟随10B的数据存储部称为数据存储部37B。另外,描述跟随10C时也同样地标注符号36C、37C来进行说明。从任务21B受理了第1任务请求信息40的访问执行部36B开始处理,但是由于没有从主导10A的访问执行部36A收到访问信息50,所以待机(S10d)。图10中用虚线表示正在待机的样子。
访问执行部36B从访问执行部36A收到第1访问信息50时(S11a),根据与该第1访问信息50相对应的任务请求信息40,访问数据存储部37B的预定数据(S11b)。
然后,任务21b向访问执行部36B发行第2任务请求信息40。这时,访问执行部36B完成从主导10A的访问执行部36A接收第2访问信息50(S21a)。因此,访问执行部36B立刻根据与该第2访问信息50相对应的任务请求信息40,访问数据存储部37B的预定数据(S21b)。
接下来,对访问执行部36B的基于在跟随10C执行的任务21C以及21c的任务请求信息40的处理进行说明。任务21C开始处理。从任务21C受理了任务请求信息40的访问执行部36C由于已经从主导10A的访问执行部36A接收了第1访问信息50(S12a),所以立刻根据任务请求信息40访问数据存储部37C的预定数据(S11c)。
另一方面,任务21c比任务21C较早地开始处理(S20c)。但是,由于访问执行部36C还没有从主导10A的访问执行部36A接收第2访问信息50,所以待机。
访问执行部36C从访问执行部36A接收第2访问信息50(S22a)。但是,由于在该时刻还没有完成与第1访问信息50相对应的访问处理,所以访问执行部36C保持待机直到完成与第1访问信息50相对应的访问处理为止。
访问执行部36C在完成了与第1访问信息50相对应的访问处理后,根据任务请求信息40来访问数据存储部37C的预定数据(S21c)。
通过以上的处理,即使主导10A中的任务启动顺序、跟随10B中的任务启动顺序、以及跟随10C中的任务启动顺序不一致时,在各计算机节点10中,能够使各任务访问数据的顺序相同。即,能够防止在各计算机节点中进行相同处理的任务为不同的执行结果。
图11是表示作为主导的计算机节点10A接收来自外部终端2的外部访问请求时的时序的图的一个示例。
首先,对在主导10A中执行的访问执行部36A的处理进行说明。因为访问执行部36A的步骤S30a~S31a与图10中的步骤S20a~S21a为同样的处理所以省略说明。
接下来,访问执行部36A指示外部访问执行部38A接收从终端2发送的数据(S33a)。
外部访问执行部38A接收到从终端2发送的数据时(S34a),将其意思通知给访问执行部36A(S35a)。这时,外部访问执行部38A向跟随10B的外部访问执行部38B、和跟随10C的外部访问执行部38C转发输入信息60(S36a、S37a)。
接下来,对在跟随10B中执行的访问执行部36B的处理进行说明。访问执行部36B在开始处理时已经从主导10A的访问执行部36A接收了访问信息50(S31a)。因此,访问执行部36B指示外部访问执行部38B接受从主导10A的外部访问执行部38A转发的输入信息60(S31b)。
外部访问执行部38B从主导10A接收到输入信息60时(S36a),将输入信息60所包含的输入结果标记63、数据大小64、以及数据内容65通知给访问执行部36B(S32b)。另外,跟随10C的访问执行部36C也进行与上述同样的处理(S30c~S32c)。
如以上那样,以主导10A为代表来接收从外部终端2等发送到FT系统1的数据,并将这些数据转发给跟随。然后,在主导10A和跟随10B以及10C分别执行同一处理。由此,跟随也能够得到与主导相同的输入结果,利用输入结果的任务能够进行相同的动作。
图12是表示作为主导的计算机节点10A向终端2发送数据时的时序的图的一个示例。
首先,对在主导10A中执行的访问执行部36A的处理进行说明。因为访问执行部36A的步骤S40a~S42a与图11中的步骤S30a~S32a是同样的处理所以省略说明。访问执行部36A指示外部访问执行部38A向终端2发送数据(S43a)。外部访问执行部38A将从访问执行部36A交给的数据记载到输出信息70,并将其分别向跟随10B的外部访问执行部38B以及跟随10C的外部访问执行部38C转发(S44a、S45a)。外部访问执行部38A从跟随10B的外部访问执行部38B以及跟随10C的外部访问执行部38C接收表示主导10A的输出数据是否正确的输出正确与否信息14(S42b、S42c)。当外部访问执行部38A从多数(例如,半数以上)跟随收到了结果是正确的意思的通知时,向终端2发送主导10A的输出数据(S46a)。
对在跟随10B中执行的访问执行部36B的处理进行说明。在开始处理时访问执行部36B已经从主导10A的访问执行部36A接收了访问信息50(S40b)。因此,访问执行部B将输出数据交给外部访问执行部38B。外部访问执行部38B对从访问执行部36B收到的输出数据、和从主导10A的任务21A接收到的输出信息70进行比较。当输出数据一致时,外部访问执行部38B将表示一致的意思的“正”的信息记载到输出正确与否信息80的正确与否标记81,并发送到主导10A的外部访问执行部38A(S42b)。另一方面,当输出数据不一致时,外部访问执行部38B将表示不一致的意思的“否”的信息记载到输出正确与否信息80的正确与否标记81,并发送到主导A的外部访问执行部38A(S42b)。另外,在跟随10C中执行的任务21C也进行与上述同样的处理(S40c~S42c)。
通过以上的处理,即使主导10A的输出数据由于某不良而导致错误,也能够防止向终端2发送错误的输出数据。
图13是表示任务请求信息的处理的流程图。访问执行部36根据任务请求信息40生成访问信息50(S201)。访问执行部36判定自己所属的计算机节点10是主导,还是跟随(S202)。以下,将自己所属的计算机节点称为本节点。
对本节点是主导时的处理进行说明(S202:主导)。访问执行部36向跟随10B以及10C发送访问信息50(S203)。
访问执行部36判定任务请求信息40是请求对本节点内部的存储装置13的访问的信息,还是请求对外部终端2的访问的信息(S210)。
访问请求信息40是请求对本节点内部的数据存储部37的访问的信息时(S210:内部),访问执行部36对数据存储部37的数据进行访问(S211)。
另一方面,是请求对终端2的访问的信息时(S210:外部),外部访问执行部38与终端2进行数据的收发(S212)。
接下来,返回到步骤S202,对自己的计算机节点10是跟随时的处理进行说明(S202:否)。
访问执行部36将在步骤S201中生成的跟随访问信息50存储到访问信息管理表35中(S204)。访问执行部36将从主导10A接收的主导访问信息50存储到访问信息管理表35中(S205)。访问执行部36根据访问信息管理表35对跟随访问信息52B和主导访问信息52A的对应关系进行核对(S206)。即,例如在图4中,对跟随访问信息52B和记载于同一行的主导访问信息52A进行核对。
访问执行部36判定所核对的跟随访问信息52B能否立刻执行(S207)。在相同的访问对象标识符53的组内,当序号比所核对的跟随访问信息52B小的跟随访问信息52B全部执行完毕时,判定为能够立刻执行。当还存在未执行的跟随访问信息52B时判定为还不能执行。通过参照自节点执行信息57能知道是否执行完毕。
当跟随访问信息52B全部执行完毕时(S207:是),访问执行部36在访问信息管理表35中,将跟随访问信息52B的序号记录到与所核对的跟随访问信息52B相对应的自节点执行信息57(S208)。与从上述的步骤S210到S212同样地,访问执行部36根据任务请求信息40来访问数据存储部37的预定数据。
另一方面,当还剩余未执行的跟随访问信息52B时(S207:否),访问执行部36暂时保留该访问处理(S209),返回到步骤S205。
另外,在访问信息管理表35中还可以具有状态变化标记55。例如,在访问信息管理表35中剩余有比执行的访问处理序号小的未执行的访问处理。若为上述处理的话,在步骤S207中,由于剩余有未执行的访问处理,所示判断为不能执行访问处理。
对具有状态变化标记55的情况进行说明。当与某个跟随访问信息52B相对应的主导访问信息52A以及比其序号小的主导访问信息52A的全部状态变化标记55是“无”,且相对应的跟随访问信息51B的全部状态变化标记55也是“无”时,也可以使步骤S207的判定为是。通过管理状态变化标记55,步骤S207的条件成立的可能性变高。因此,能够减少保留访问处理的执行的频率。
图14是表示外部访问执行部38从终端2接收外部访问请求的处理流程的一个示例的图。
外部访问执行部38对本节点是主导还是跟随进行判定(S301)。对本节点是主导时的处理进行说明(S301:主导)。
外部访问执行部38经外部通信I/F14,从终端2等接收外部访问请求10,并执行该请求(S302)。
外部访问执行部38生成包含输入数据的输入信息60(S303)。
外部访问执行部38向跟随10B以及10C发送所生成的输入信息60(S304)。
外部访问执行部38将输入结果通知给访问执行部36(S305)。
返回到步骤S301,对本节点是跟随时的处理进行说明(S301:跟随)。
外部访问执行部38从主导接收输入信息60(S306)。
外部访问执行部38根据输入信息60再现主导的输入结果(S307),并将再现后的输入结果通知给访问执行部36(S305)。
通过以上的处理,跟随也能够得到和主导相同的输入结果,利用输入结果的任务能够进行相同动作。
图15是表示外部访问执行部38向终端2发送输出数据的处理流程的一个示例的图。
外部访问执行部38将输出数据存储到输出管理表39中(S401)。
外部访问执行部38判定本节点是主导还是跟随(S402)。
首先,对本节点是主导时的处理进行说明(S402:主导)。
外部访问执行部38向跟随10B以及10C发送输出信息(S403)。
外部访问执行部38从各跟随接收输出正确与否信息80(S404)。
然后,外部访问执行部38将接收到的输出正确与否信息80交给输出判定部33,并使输出判定部33判定输出数据是否是正确的。输出判定部33分别对正确与否标记81是“正”的输出正确与否信息80、和正确与否标记是“否”的输出正确与否信息80的数量进行汇总。然后,判定“正”的数量是否是多数(例如,半数以上)(S405)。
该判定是“真”时(S405:是),输出判定部33将输出数据是正确的意思的判定返回给外部访问执行部38。外部访问执行部38收到这些后向终端2发送主导10A的输出数据。
另一方面,该判定是“伪”时(S405:否),输出判定部33将主导10A的输出数据有可能不正确的意思的判定返回给外部访问执行部38。外部访问执行部38收到这些后不向终端2发送在主导10A执行得到的输出数据。想定主导10A有在本节点中产生某种障碍的可能性,并停止自己的主导功能,请求跟随门选出新的主导(S407)。
接下来,返回到步骤S402,对本节点是跟随时的处理进行说明(S402:跟随)。
外部访问执行部38从主导接收输出信息70(S408)。
外部访问执行部38使输出判定部33对从主导接收的输出数据70和自己的输出数据进行比较(S409)。
输出判定部33判定该比较结果是否一致(S410)。一致时(S410:是),输出判定部33向主导10A发送将“正”记载到了正确与否标记81的输出正确与否信息80(S411)。另一方面,不一致时(S410:否),输出判定部33向主导10A发送将“否”记载到了正确与否标记81的输出正确与否信息80(S412)。
通过以上处理,对主导的输出数据和跟随的输出数据进行比较,由此能够进行可靠性更高的输出。
(第2实施方式)
第2实施方式是这样的实施方式:在第1实施方式中追加了将产生了某种异常的主导10A、跟随10B或10C从FT系统1分离的处理。
图16是表示追随可否信息90的数据结构的一个示例的图。追随可否信息90是用于将跟随10能否与主导10A一样地执行处理(即,能否追随主导10A)传递给主导10A的信息。追随可否信息90例如如图16所示那样,具有:计算机节点标识符52、追随可否标记91、以及追随可否详细信息92。
追随可否标记91是表示跟随10能否追随主导10A的标记。能够正常地追随时记载“可”,由于某种障碍不能追随时记载“不可”。
追随可否详细信息92是用于表示正在追随的访问信息50的信息。例如,追随可否详细信息92还可以是访问对象标识符51、任务标识符53、以及序号54的组合。追随可否详细信息92也可以是表示“不可”追为的理由的信息。
图17是表示第2实施方式的访问信息管理表35的一个示例的图。当从跟随接收到的追随可否信息90的追随可否标记是“可”时,主导10A的追随判定部34在访问信息管理表35的对应的追随可否标记58的项目中记载为“可”。另一方面,当不能接收追随可否信息90时,追随判定部34在访问信息管理表35的对应的追随可否标记91的项目中不进行任何记载。当追随可否标记91是“不可”时,追随判定部34在访问信息管理表35的对应的追随可否标记91的项目中记载为“不可”。当访问信息管理表35的同一行的追随可否标记91中“可”是多数(例如,半数以上)时,主导10A的追随判定部34判断为发送了“不可”的跟随可能产生了某种障碍。追随判定部34从FT系统1分离该跟随。另一方面,当可否标记中“不可”是多数(例如,半数以上)时,追随判定部34判断为主导本身产生了某种障碍的可能性高。追随判定部34停止主导功能,请求跟随们选出新的主导。
图18是表示第2实施方式的跟随的访问执行部36的处理的流程图。
构成FT系统1的计算机节点10通过心跳(heartbeat)等已知方法,相互确认基础软件30正常执行。主导10A为无响应状态时,跟随10彼此发送将该意思记载到了追随可否详细信息92的追随可否信息90。
图18的处理流程与图13的S204~S208的处理流程相符合。因此,省略图18的步骤S204和S205的说明,从步骤S220开始说明。
访问执行部36从访问信息管理表35核对最早的未执行的访问处理(S220)。访问执行部36对跟随访问信息52B的任务标识符53B、和主导访问信息52A的任务标识符53A进行比较(S221)。
任务标识符53一致时(S221:是),访问执行部36对不依赖于其他计算机节点10的其他项目、例如访问对象标识符51、状态变化标记55、以及验证用信息56进行比较(S222)。
其他项目也一致时(S222:是),访问执行部36判断为能够追随主导的访问,并向主导10A发送将追随可否标记91设为了“可”的追随可否信息90(S223)。追随可否详细信息92中包含主导10A的访问信息50的序号54等。然后,执行图13的步骤S208以后的流程。
另一方面,其他项目不一致时(S222:否),访问执行部34向主导10A发送将追随可否标记91设为了“不可”的追随可否信息90(S227)。然后,执行图13的步骤S209以后的流程。
接下来,返回到步骤S221,对任务标识符53不一致时进行说明。任务标识符53不一致时(S221:否),访问执行部34比较访问对象标识符51(S224)。
访问对象标识符51一致时(S224:是),判定保留与自己的访问信息50相对应的任务请求信息40的执行的时间是否超过了预定的超时(timeout)时间(S226)。另外,还可以通过自接收主导10A的访问信息50其是否超过了预定的超时时间进行判定。
超过了预定的超时时间时(S226:是),访问执行部36向主导发送将追随可否标记设为了“不可”的追随可否信息90(S227),并执行图13的步骤S209以后的处理流程。
另一方面,没有超过预定的超时时间时(S226:否),访问执行部36直接执行图13的步骤S209以后的处理流程。
接下来,返回到步骤S224,对访问对象标识符51不一致时(S224:否)进行说明。判定是否存在未核对的访问信息50(S225)。
存在未核对的访问信息50时(S224:是),参照下一访问信息50(S228),返回到步骤S205。
另一方面,不存在未核对的访问信息时(S224:否),前进到步骤S226。
图19是表示从FT系统1分离有发生障碍可能性的计算机节点10的处理流程的图。
主导10A的追随判定部34从各跟随接收追随可否信息90(S501)。追随判定部34针对一个访问处理分别对将追随可否标记91设为了“可”的跟随数量、和将追随可否标记91设为了“不可”的跟随数量进行汇总(S502)。
当将追随可否标记91设为了“可”的跟随的数量是多数(例如,半数以上)(S502:“可”多)时,将追随可否标记91设为了“不可”的跟随中有可能产生了某种障碍。因此,主导10A的追随判定部34从FT系统1分离该跟随(S503)。
另一方面,在将追随可否标记91设为了“不可”的跟随的数量是多数(例如,半数以上)(S502:“不可”为多数)时,主导10A中有可能产生了某种障碍。因此,主导10A的追随判定部34请求跟随们选出新的主导,并且从FT系统1分离主导10A本身(S504)。
通过以上处理,能够从FT系统1分离可能产生了某种障碍的计算机节点10。并且,FT系统1整体能够继续正确的处理。
(第3实施方式)
第3实施方式不是像第1实施方式那样由各跟随进行输出的正确与否判定,而是主导10A进行各跟随的输出的正确与否的判定。
图20是表示第3实施方式的外部访问执行部的处理流程的一个示例的图。首先,对各跟随的处理流程进行说明。因为步骤S401~S402与图15的处理流程一样所以省略说明。
本节点是跟随时(S402:跟随),将跟随本身的输出数据记载到输出信息70,向主导10A发送(S421)。
接下来,对本节点是主导时进行说明(S402:主导)。主导10A接收输出信息70(S420)。输出数据比较部33核对主导本身的输出数据和各跟随的输出数据(S422)。
输出数据和主导10A相同的跟随的数量是多数(例如,半数以上)时(S423:是),输出判定部33判断为主导10A的输出数据正确,并向终端2发送该输出数据(S406)。
另一方面,输出数据不同的跟随的数量是多数(例如,半数以上)时(S423:否),输出判定部33判断为主导10A本身有可能产生了某种障碍。因此,输出判定部33停止主导的功能,请求跟随们选出新的主导(S407)。
通过以上处理,主导10A如图15的处理流程一样,不需要向跟随发送输出正确与否信息80。因此,能够减轻计算机节点间的通信业务量。
(第4实施方式)
第4实施方式将来自跟随的追随可否信息90的可否利用到主导10A的输出的正确与否的验证中。
图21是表示第4实施方式的主导10A的输出的正确与否判定处理的流程图。因为步骤S600~S602的处理与图19的步骤S500~S502是一样的处理,所以省略说明。
追随判定部34汇总追随可否信息90的追随可否标记91,并当“可”的追随可否标记91是多数时(S602:“可”多),判断为主导10A的输出数据是正确的,将该输出数据发送给终端2(S603)。对于判定为“不可”的跟随,判断为其有可能产生了某种障碍。因此,追随判定部34从FT系统1分离该跟随(S604)。
另一方面,“不可”的追随可否标记91是多数时(S602:“不可”多),判断为主导10A的输出数据有可能不正确。不向终端2发送主导10A的输出数据。追随判定部34请求跟随们选出新的主导,并且从FT系统1分离作为本节点的主导10A(S605)。
在以上处理中,由于各跟随不需要向主导10A发送输出信息70,所以能够减轻计算机节点间的通信业务量。
上述的本发明的实施方式是用于说明本发明的示例,不是将本发明的范围仅限定于各个实施方式的意思。本领域的技术人员在不脱离本发明的宗旨的情况下可以用其他的各种各样的方式实施本发明。
本实施方式例如能够以以下方式表现。
一种由多个计算机节点构成的计算机系统,
上述多个计算机节点中的1个计算机节点是第1计算机节点,
上述第1计算机节点具有:
执行部,其执行预定的请求,并生成输出数据;以及
输出判定部,其向其他计算机节点询问上述输出数据是否正确,当从预定的数量的其他计算机节点得到了正确的意思的答复时,判定为上述输出数据正确。
此外,本实施方式例如还能够以以下方式表现。
一种由多个计算机节点构成的计算机系统,
上述多个计算机节点中的1个计算机节点是第1计算机节点,
上述多个计算机节点中的除上述第1计算机节点以外的其他计算机节点是第2计算机节点,
上述第1计算机节点和上述第2计算机节点分别具有:
执行部,其执行预定的处理,并生成输出数据;以及
输出判定部,其判定输出是否正确,
上述第1计算机节点在本节点的上述执行部中,执行预定的处理并生成第1输出数据,
上述第1计算机节点在本节点的输出判定部中,向上述第2计算机节点询问上述第1输出数据是否正确,当从预定数量的上述第2计算机节点得到了正确的意思的答复时,判断为上述第1输出数据正确,
上述第2计算机节点在本节点的上述执行部中,执行与在上述第1计算机节点执行的预定处理相同的处理,并生成第2输出数据,
上述第2计算机节点在本节点的输出判定部中接受来自上述第1计算机节点的询问,判定上述第1输出数据和上述第2输出数据是否是同样的结果,判定结果是肯定时,向上述第1计算机节点传送上述第1输出数据是正确的意思的答复。
符号说明
1:容错系统
2:终端
10:计算机节点
10A:主导
10B、10C:跟随
Claims (5)
1.一种计算机系统,其是多个计算机节点经通信网络而连接的计算机系统,其特征在于,
上述多个计算机节点中的1台计算机节点是主导计算机节点,
上述多个计算机节点中的除上述主导计算机节点以外的其他计算机节点是跟随计算机节点,
上述主导计算机节点和上述跟随计算机节点分别执行同一任务,
上述主导计算机节点和上述跟随计算机节点分别具有:
通信接口部,其经通信网络而与其他计算机节点进行通信;
存储部,其用于存储数据;
访问执行部,其根据上述任务执行对上述存储部的访问请求;以及
执行结果判定部,其用于判定通过上述访问执行部执行的执行结果是否正确,
上述主导计算机节点在本节点的访问执行部中,根据由第1任务请求的第1多个访问请求来生成第1输出数据,
上述主导计算机节点在本节点的输出判定部中,向上述跟随计算机节点询问上述第1输出数据是否正确,当从预定数量的上述跟随计算机节点得到了正确的意思的答复时,判断为上述第1输出数据正确,
上述跟随计算机节点在本节点的访问执行部中,按与上述主导计算机节点的访问执行部相同的顺序执行与上述第1任务进行同样的处理的访问请求并根据由第2任务请求的第2多个访问请求来生成第2输出数据,
上述跟随计算机节点在本节点的输出数据判定部中,接受来自上述主导计算机节点的询问,判定上述第1输出数据和上述第2输出数据是否是同样的数据,在判定结果为肯定时,向上述主导计算机节点发送上述第1输出数据正确的意思的答复。
2.根据权利要求1所述的计算机系统,其特征在于,
上述多个计算机节点还具有经上述通信接口部从外部装置接收输入数据的外部访问执行部,
上述主导计算机节点在本节点的外部访问执行部中,向上述跟随计算机节点发送所接收到的输入数据,
上述跟随计算机节点在本节点的访问执行部中,将从上述主导计算机节点发送的输入数据通知给任务。
3.根据权利要求1或2所述的计算机系统,其特征在于,
当从半数以上的上述跟随计算机节点得到输出数据正确的意思的答复时,上述主导计算机节点的输出判定部判断为该主导计算机节点的访问执行部所生成的输出数据是正确的。
4.根据权利要求1所述的计算机系统,其特征在于,
上述多个计算机节点还具有追随判定部,该追随判定部对上述跟随计算机节点的访问执行部能否与上述主导计算机节点的访问执行部执行同样的处理进行判定,
上述跟随计算机节点的追随判定部对上述跟随计算机节点中执行的访问请求和上述主导计算机节点中执行的访问请求的某一个是否是对应关系进行判定,并当判定结果是肯定时,向上述主导计算机节点发送能够追随的意思的通知,当判定结果是否定时,向上述主导计算机节点发送不能够追随的意思的通知。
5.一种数据处理方法,其特征在于,
多个计算机节点经通信网络而连接,上述多个计算机节点中的1台计算机节点是主导计算机节点,
上述多个计算机节点中的除上述主导计算机节点以外的其他计算机节点是跟随计算机节点,
上述主导计算机节点和上述跟随计算机节点分别执行同一任务,
上述主导计算机节点具有以下步骤:
在本节点中,根据由第1任务请求的第1多个访问请求来生成第1输出数据;以及
在本节点中,向上述跟随计算机节点询问上述第1输出数据是否正确,当从预定数量的上述跟随计算机节点得到了正确的意思的答复时,判断为上述第1输出数据正确,
上述跟随计算机节点具有以下步骤:
在本节点中,按与上述主导计算机节点中的顺序相同的顺序执行与上述第1任务进行同样的处理的访问请求并根据由第2任务请求的第2多个访问请求来生成第2输出数据;以及
在本节点中,接受来自上述主导计算机节点的询问,判定上述第1输出数据和上述第2输出数据是否是同样的数据,判定结果是肯定时,向上述主导计算机节点发送上述第1输出数据是正确的意思的答复。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2011/056972 WO2012127652A1 (ja) | 2011-03-23 | 2011-03-23 | 計算機システム、データ処理方法、及びデータ処理プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103180832A CN103180832A (zh) | 2013-06-26 |
CN103180832B true CN103180832B (zh) | 2016-01-13 |
Family
ID=46878845
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201180050994.2A Expired - Fee Related CN103180832B (zh) | 2011-03-23 | 2011-03-23 | 计算机系统和数据处理方法 |
Country Status (4)
Country | Link |
---|---|
EP (1) | EP2690557B1 (zh) |
JP (1) | JP5416863B2 (zh) |
CN (1) | CN103180832B (zh) |
WO (1) | WO2012127652A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6100135B2 (ja) * | 2013-09-26 | 2017-03-22 | 株式会社日立製作所 | フォールトトレラントシステム及びフォールトトレラントシステム制御方法 |
JP2017027092A (ja) * | 2013-12-03 | 2017-02-02 | 三菱電機株式会社 | データ処理装置およびデータ処理プログラム |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6128755A (en) * | 1992-03-04 | 2000-10-03 | International Business Machines Corporation | Fault-tolerant multiple processor system with signature voting |
JP2009217503A (ja) * | 2008-03-10 | 2009-09-24 | Hitachi Ltd | 計算機システム、計算機制御方法及び計算機制御プログラム |
JP2011039798A (ja) * | 2009-08-12 | 2011-02-24 | Hitachi Ltd | 多重化コンピュータシステム、コンピュータおよびコンピュータ間処理同期化方法 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3483931B2 (ja) * | 1993-08-31 | 2004-01-06 | 株式会社東芝 | プログラム実行制御方法および計算機 |
JPH07306794A (ja) * | 1994-05-12 | 1995-11-21 | Mitsubishi Electric Corp | 分散システム及び分散システムの高信頼化方法 |
JPH08314744A (ja) | 1995-05-18 | 1996-11-29 | Hitachi Ltd | フォールトトレラントシステム |
US5699501A (en) * | 1996-04-30 | 1997-12-16 | International Business Machines Corporation | System for group leader recovery in a distributed computing environment |
JP2003067214A (ja) * | 2001-08-27 | 2003-03-07 | Nippon Telegr & Teleph Corp <Ntt> | サーバシステム、仲介装置、クライアントサーバ型システムにおける誤り隠蔽方法 |
JP2003140704A (ja) * | 2001-11-06 | 2003-05-16 | Yamatake Sangyo Systems Co Ltd | プロセス制御装置 |
JP2004046356A (ja) * | 2002-07-09 | 2004-02-12 | Fujitsu Ltd | 高信頼性クラスタシステムおよびそれを実現するプログラム |
JP4345334B2 (ja) * | 2003-03-28 | 2009-10-14 | 日本電気株式会社 | 耐障害計算機システム、プログラム並列実行方法およびプログラム |
JP4457581B2 (ja) * | 2003-05-28 | 2010-04-28 | 日本電気株式会社 | 耐障害システム、プログラム並列実行方法、耐障害システムの障害検出装置およびプログラム |
US7711825B2 (en) * | 2003-12-30 | 2010-05-04 | Microsoft Corporation | Simplified Paxos |
US8499297B2 (en) * | 2008-10-28 | 2013-07-30 | Vmware, Inc. | Low overhead fault tolerance through hybrid checkpointing and replay |
-
2011
- 2011-03-23 CN CN201180050994.2A patent/CN103180832B/zh not_active Expired - Fee Related
- 2011-03-23 WO PCT/JP2011/056972 patent/WO2012127652A1/ja active Application Filing
- 2011-03-23 JP JP2013505722A patent/JP5416863B2/ja not_active Expired - Fee Related
- 2011-03-23 EP EP11861693.7A patent/EP2690557B1/en not_active Not-in-force
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6128755A (en) * | 1992-03-04 | 2000-10-03 | International Business Machines Corporation | Fault-tolerant multiple processor system with signature voting |
JP2009217503A (ja) * | 2008-03-10 | 2009-09-24 | Hitachi Ltd | 計算機システム、計算機制御方法及び計算機制御プログラム |
JP2011039798A (ja) * | 2009-08-12 | 2011-02-24 | Hitachi Ltd | 多重化コンピュータシステム、コンピュータおよびコンピュータ間処理同期化方法 |
Non-Patent Citations (1)
Title |
---|
Shuffled belief propagation decoding;Juntan Zhang等;《Conference Record of the Thirty-Sixth Asilomar Conference on Signal,System and Computers》;20021106;第1卷;8-15 * |
Also Published As
Publication number | Publication date |
---|---|
EP2690557A1 (en) | 2014-01-29 |
JP5416863B2 (ja) | 2014-02-12 |
EP2690557A4 (en) | 2014-08-20 |
JPWO2012127652A1 (ja) | 2014-07-24 |
EP2690557B1 (en) | 2015-05-13 |
CN103180832A (zh) | 2013-06-26 |
WO2012127652A1 (ja) | 2012-09-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20200067726A1 (en) | Iot provisioning service | |
US7961594B2 (en) | Methods and systems for history analysis for access paths in networks | |
CN110580235B (zh) | 一种sas扩展器通信方法及装置 | |
CN102419729B (zh) | 并行测试执行 | |
CN110807064B (zh) | Rac分布式数据库集群系统中的数据恢复装置 | |
CN110673941B (zh) | 多机房中微服务的迁移方法、电子设备及存储介质 | |
CN103593266A (zh) | 一种基于仲裁盘机制的双机热备方法 | |
RU2475818C2 (ru) | Способы и системы обмена данными | |
JP2006014310A (ja) | 冗長接続サービスの提供方法および装置 | |
CN108718282A (zh) | 报文序列号的确定方法及装置 | |
CN105373345A (zh) | 存储器设备和模块 | |
CN111064804A (zh) | 网络访问方法和装置 | |
CN103180832B (zh) | 计算机系统和数据处理方法 | |
CN100570570C (zh) | 一种实现计算机死机智能分析的系统及方法 | |
WO2018157605A1 (zh) | 一种集群文件系统中消息传输的方法及装置 | |
WO2024103902A1 (zh) | 一种数据库访问方法、装置、系统、设备及可读存储介质 | |
CN110490740A (zh) | 一种区块链系统的共识机制处理方法及装置 | |
US10749772B1 (en) | Data reconciliation in a distributed data storage network | |
CN110912760B (zh) | 链路状态检测方法和装置 | |
CN107943664A (zh) | 信息管理方法、设备及存储介质 | |
CN106789304A (zh) | 网络设备配置同步方法和装置 | |
US20190253337A1 (en) | Method for detecting topology, compute node, and storage node | |
JP2016200961A (ja) | サーバー障害監視システム | |
CN104243197A (zh) | 数据传输方法、系统及虚拟存储网关 | |
CN109460251A (zh) | 构件集成框架管理方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20160113 |
|
CF01 | Termination of patent right due to non-payment of annual fee |