CN112000299A - 一种节点数据转发方法及相关装置 - Google Patents
一种节点数据转发方法及相关装置 Download PDFInfo
- Publication number
- CN112000299A CN112000299A CN202011033776.5A CN202011033776A CN112000299A CN 112000299 A CN112000299 A CN 112000299A CN 202011033776 A CN202011033776 A CN 202011033776A CN 112000299 A CN112000299 A CN 112000299A
- Authority
- CN
- China
- Prior art keywords
- node
- data
- state
- forwarded
- nodes
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 41
- 238000004590 computer program Methods 0.000 claims description 10
- 238000012423 maintenance Methods 0.000 claims description 6
- 238000006243 chemical reaction Methods 0.000 claims description 3
- 229910002056 binary alloy Inorganic materials 0.000 abstract description 10
- 238000012545 processing Methods 0.000 abstract description 10
- 230000009286 beneficial effect Effects 0.000 abstract description 2
- 238000005516 engineering process Methods 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000009191 jumping Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Hardware Redundancy (AREA)
- Computer And Data Communications (AREA)
Abstract
本申请公开了一种节点数据转发方法,包括:根据接收到的多个其他节点的节点状态信息以二进制数的形式进行组合,得到节点状态数据;当本地的磁盘状态为脱机状态时,根据所述节点状态数据进行二进制逻辑运算,得到待转发节点;将待转发数据发送至所述待转发节点。通过将其他节点的节点状态信息以二进制进行维护得到节点状态数据,当脱机状态时直接根据该节点状态数据确定待转发节点即可,提高了替代节点的确定效率,进一步提高了脱机处理的效率。本申请还公开了一种节点数据转发装置、服务器以及计算机可读存储介质,具有以上有益效果。
Description
技术领域
本申请涉及计算机技术领域,特别涉及一种节点数据转发方法、节点数据转发装置、服务器以及计算机可读存储介质。
背景技术
随着信息技术的不断发展,出现了集群式的存储系统,以应对速度要求更快容量要求更高的存储要求。在常见的集群存储系统中,通常是以磁盘为载体来储存数据。在实际应用过程中,可能会出现磁盘故障,导致磁盘脱机的场景。此时如果主机端的IO(Input/Output,输入/输出)继续往存储上发送,而存储不及时响应磁盘脱机事件的话,可能会导致数据丢失,从而引发非常严重的后果。
相关技术中,在磁盘脱机后,本控制器在当前集群中寻找一个其他的控制器节点,由其他节点来接管本控制器的IO,来保证IO的数据不丢失,同时也可以保障业务的连续性,带来好的用户体验。但是,该技术方案中替代节点的寻找方法效率较低,没有办法应对实时性要求较高的存储场景中,容易导致IO数据丢失,业务中断等问题。
因此,如何提高替代节点的寻找效率是本领域技术人员关注的重点问题。
发明内容
本申请的目的是提供一种节点数据转发方法、节点数据转发装置、服务器以及计算机可读存储介质,通过将其他节点的节点状态信息以二进制进行维护得到节点状态数据,当脱机状态时直接根据该节点状态数据确定待转发节点即可,提高了替代节点的确定效率,进一步提高了脱机处理的效率。
为解决上述技术问题,本申请提供一种节点数据转发方法,包括:
根据接收到的多个其他节点的节点状态信息以二进制数的形式进行组合,得到节点状态数据;
当本地的磁盘状态为脱机状态时,根据所述节点状态数据进行二进制逻辑运算,得到待转发节点;
将待转发数据发送至所述待转发节点。
可选的,根据接收到的多个其他节点的节点状态信息以二进制数的形式进行组合,得到节点状态数据,包括:
接收所述多个其他节点发送的节点状态信息;
将所述节点状态信息转换为节点编号对应位数的二进制数;
将所有的所述二进制数相加,得到节点状态数据。
可选的,还包括:
根据接收到的节点状态信息对所述节点状态数据进行更新,得到新的节点状态数据。
可选的,当本地的磁盘状态为脱机状态时,根据所述节点状态数据进行二进制逻辑运算,得到待转发节点,包括:
当所述本地的磁盘状态为脱机状态时,将所述节点状态数据的节点状态二进制数与所述节点状态数据的磁盘状态二进制数进行逻辑与运算,得到可用节点;
根据节点编号从小到大的顺序从所述可用节点中确定所述待转发节点。
可选的,还包括:
当确定所述待转发节点时,判断所述本地的磁盘状态是否为脱机状态;
若是,则执行所述将待转发数据发送至所述待转发节点的步骤;
若否,则发送停止转发消息。
本申请还提供一种节点数据转发装置,包括:
状态数据维护模块,用于根据接收到的多个其他节点的节点状态信息以二进制数的形式进行组合,得到节点状态数据;
待转发节点确定模块,用于当本地的磁盘状态为脱机状态时,根据所述节点状态数据进行二进制逻辑运算,得到待转发节点;
数据转发模块,用于将待转发数据发送至所述待转发节点。
可选的,所述状态数据维护模块,包括:
节点信息接收单元,用于接收所述多个其他节点发送的节点状态信息;
二进制转换单元,用于将所述节点状态信息转换为节点编号对应位数的二进制数;
组合单元,用于将所有的所述二进制数相加,得到节点状态数据。
可选的,还包括:
状态数据更新模块,用于根据接收到的节点状态信息对所述节点状态数据进行更新,得到新的节点状态数据。
本申请还提供一种服务器,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上所述的节点数据转发方法的步骤。
本申请还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的节点数据转发方法的步骤。
本申请所提供的一种节点数据转发方法,包括:根据接收到的多个其他节点的节点状态信息以二进制数的形式进行组合,得到节点状态数据;当本地的磁盘状态为脱机状态时,根据所述节点状态数据进行二进制逻辑运算,得到待转发节点;将待转发数据发送至所述待转发节点。
通过根据接收到的多个其他节点的节点状态信息以二进制数的形式进行组合,得到节点状态数据,然后当本地的磁盘状态为脱机状态时,根据所述节点状态数据进行二进制逻辑运算,得到待转发节点;最后将待转发数据发送至所述待转发节点,通过将其他节点的节点状态信息以二进制进行维护得到节点状态数据,而不是对集群中的节点进行轮询,当脱机状态时直接根据该节点状态数据确定待转发节点即可,提高了替代节点的确定效率,进一步提高了脱机处理的效率。
本申请还提供一种节点数据转发装置、服务器以及计算机可读存储介质,具有以上有益效果,在此不做赘述。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例所提供的一种节点数据转发方法的流程图;
图2为本申请实施例所提供的一种节点数据转发装置的结构示意图。
具体实施方式
本申请的核心是提供一种节点数据转发方法、节点数据转发装置、服务器以及计算机可读存储介质,通过将其他节点的节点状态信息以二进制进行维护得到节点状态数据,当脱机状态时直接根据该节点状态数据确定待转发节点即可,提高了替代节点的确定效率,进一步提高了脱机处理的效率。
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
相关技术中,在磁盘脱机后,本控制器在当前集群中寻找一个其他的控制器节点,由其他节点来接管本控制器的IO,来保证IO的数据不丢失,同时也可以保障业务的连续性,带来好的用户体验。但是,该技术方案中替代节点的寻找方法效率较低,没有办法应对实时性要求较高的存储场景中,容易导致IO数据丢失,业务中断等问题。
因此,本申请提供一种节点数据转发方法,通过根据接收到的多个其他节点的节点状态信息以二进制数的形式进行组合,得到节点状态数据,然后当本地的磁盘状态为脱机状态时,根据所述节点状态数据进行二进制逻辑运算,得到待转发节点;最后将待转发数据发送至所述待转发节点,通过将其他节点的节点状态信息以二进制进行维护得到节点状态数据,而不是对集群中的节点进行轮询,当脱机状态时直接根据该节点状态数据确定待转发节点即可,提高了替代节点的确定效率,进一步提高了脱机处理的效率。
以下通过一个实施例,对本申请提供的一种节点数据转发方法进行说明。
请参考图1,图1为本申请实施例所提供的一种节点数据转发方法的流程图。
本实施例中,该方法可以包括:
S101,根据接收到的多个其他节点的节点状态信息以二进制数的形式进行组合,得到节点状态数据;
本步骤旨在根据接收到的多个其他节点的节点状态信息以二进制数的形式进行组合,得到节点状态数据,并将节点状态数据保存在本地。
相关技术中,一般是本地节点向其他的多个节点发送状态信息请求,根据得到的节点状态信息,确定出需要转发的节点,然后再转发数据。但是,这样的确定方式效率极低,无法满足正常的使用需求。
因此,本实施例中直接在本地维护出需要使用的节点状态数据。进一步的,以二进制的进制的方式维护出对应的节点状态数据,提高了数据的计算效率,以便及时确定待转发节点。
举例来说,当集群中存在4个节点均是在线状态,可以表示为0b00000000000000000000000000001111。其中,每一个1表示该位上对应的节点为在线状态。也就是,第一个节点、第二个节点、第三个节点以及第四个节点为在线状态。每一个0表示该位上对应的节点为离线状态。
进一步的,为了实现进一步的二进制数表示,本步骤可以包括:
步骤1,接收多个其他节点发送的节点状态信息;
步骤2,将节点状态信息转换为节点编号对应位数的二进制数;
步骤3,将所有的二进制数相加,得到节点状态数据。
可见,本可选方案主要是对如何得到节点状态数据进行说明。本可选方案中,首先接收多个其他节点发送的节点状态信息;然后,将节点状态信息转换为节点编号对应位数的二进制数;最后,将所有的二进制数相加,得到节点状态数据。
进一步的,为了保持状态数据的准确性,本步骤还可以包括:
根据接收到的节点状态信息对节点状态数据进行更新,得到新的节点状态数据。
可见,本步骤中还根据接收到的节点状态信息对节点状态数据进行更新,得到新的节点状态数据。也就是,实时接收到节点状态信息,最后根据该节点状态信息对节点状态数据进行更新,得到新的节点状态数据。
S102,当本地的磁盘状态为脱机状态时,根据节点状态数据进行二进制逻辑运算,得到待转发节点;
在S101的基础上,本步骤旨在当本地的磁盘状态为脱机状态时,根据节点状态数据进行二进制逻辑运算,得到待转发节点。
其中,主要是计算出二进制标识的节点状态数据中对应的正常状态的节点编号,该节点编号对应的待转发节点。
进一步的,本步骤可以包括:
步骤1,当本地的磁盘状态为脱机状态时,将节点状态数据的节点状态二进制数与节点状态数据的磁盘状态二进制数进行逻辑与运算,得到可用节点;
步骤2,根据节点编号从小到大的顺序从可用节点中确定待转发节点。
可见,本可选方案主要是对如何进行运算进行说明。本可选方案中首先当本地的磁盘状态为脱机状态时,将节点状态数据的节点状态二进制数与节点状态数据的磁盘状态二进制数进行逻辑与运算,得到可用节点;然后,根据节点编号从小到大的顺序从可用节点中确定待转发节点。其中,节点状态数据包括节点状态二进制数和磁盘状态二进制数。均是通过二进制位数中的1或0表示对应的状态。
S103,将待转发数据发送至待转发节点。
在S102的基础上,本步骤旨在将待转发数据发送至待转发节点。
本步骤中,在确定了待转发节点的基础上,可以采用现有技术提供的任意一种转发方式,在此不做具体限定。
本实施例,还可以包括:
步骤1,当确定待转发节点时,判断本地的磁盘状态是否为脱机状态;
步骤2,若是,则执行将待转发数据发送至待转发节点的步骤;
步骤3,若否,则发送停止转发消息。
可见,避免节点修复好后还进行数据转发,避免造成硬件资源的浪费。
综上,本实施例通过根据接收到的多个其他节点的节点状态信息以二进制数的形式进行组合,得到节点状态数据,然后当本地的磁盘状态为脱机状态时,根据节点状态数据进行二进制逻辑运算,得到待转发节点;最后将待转发数据发送至待转发节点,通过将其他节点的节点状态信息以二进制进行维护得到节点状态数据,而不是对集群中的节点进行轮询,当脱机状态时直接根据该节点状态数据确定待转发节点即可,提高了替代节点的确定效率,进一步提高了脱机处理的效率。
以下通过一个具体的实施例,对本申请提供的一种节点数据转发方法做进一步说明。
本实施例中,该方法可以包括:
首先,声明一个int类型的变量node_index来存放节点编号。
然后,本实施例需要每一个节点都可以获取到集群中所有节点的节点状态node_state_set和磁盘状态disk_state_set,这两个值声明为unsigned int类型,unsigned int类型用二进制表示的话是32位,本实施例采用这32位中的每一位代表一个节点,在线用1表示,不在线用0表示,集群的最大节点数为32。
例如,集群中有4个节点,节点1是在线的,但是其磁盘已经不在线了,其他节点的状态均正常,则node_state_set的值为0b00000000000000000000000000001111,disk_state_set的值为0b00000000000000000000000000001110,以此类推。
在此基础上,本实施例的操作步骤可以包括:
步骤1,首先获取本节点的磁盘状态,如果磁盘脱机的话,则进行如下处理;
步骤2,获取集群的node_state_set和disk_state_set信息,将node_state_set和disk_state_set进行逻辑与运算,得出的结果存放在unsigned int类型的变量node_disk_and_set中;
步骤3,将当前节点的节点编号node_index进行如下运算,将得出的值存放在unsigned int类型的变量node_index_set中:
node_index_set=(unsigned int)(1<<node_index);
步骤4,声明两个int类型的变量min_node_index和max_node_index表示可以转发的最小的节点编号和最大的节点编号,初始值都设置为32。然后声明一个int类型的变量tmp_node_index表示节点编号,初始值设置为0;
步骤5,将tmp_node_index进行如下运算,将得出的值存放在unsigned int类型的变量tmp_node_index_set中:
tmp_node_index_set=(unsigned int)(1<<tmp_node_index),
然后,将tmp_node_index_set和node_disk_and_set进行逻辑与运算,如果结果不等于0:将max_node_index赋值成tmp_node_index,如果同时min_node_index还等于32,则将min_node_index也赋值成tmp_node_index。如果结果等于0,不进行任何处理。然后将tmp_node_index的值加一,重复步骤5,直到tmp_node_index等于32,再进行步骤6;
步骤6,将node_disk_and_set和node_index_set进行逻辑与运算:如果结果不为0,表明此节点的磁盘已经上线,则将转发的节点置为当前节点,不再进行转发处理,退出运算;如果结果为0,表示此节点磁盘仍未上线,继续步骤7;
步骤7,声明一个int类型的变量:最后转发的节点编号last_node,初始值设置为min_node_index;
步骤8,如果last_node等于max_node_index,则将IO转发到节点min_node_index上,然后退出。否则进行下一步;
步骤9,将last_node进行如下运算,将得出的值存放在unsigned int类型的变量last_node_set中:
last_node_set=(unsigned int)(1<<last_node);
步骤10,将last_node_set和node_disk_and_set进行逻辑与运算,如果结果为0,则last_node的值加1,跳到步骤8,否则将IO转发到last_node节点,然后退出。
可见,本实施例通过根据接收到的多个其他节点的节点状态信息以二进制数的形式进行组合,得到节点状态数据,然后当本地的磁盘状态为脱机状态时,根据节点状态数据进行二进制逻辑运算,得到待转发节点;最后将待转发数据发送至待转发节点,通过将其他节点的节点状态信息以二进制进行维护得到节点状态数据,而不是对集群中的节点进行轮询,当脱机状态时直接根据该节点状态数据确定待转发节点即可,提高了替代节点的确定效率,进一步提高了脱机处理的效率。
下面对本申请实施例提供的节点数据转发装置进行介绍,下文描述的节点数据转发装置与上文描述的节点数据转发方法可相互对应参照。
请参考图2,图2为本申请实施例所提供的一种节点数据转发装置的结构示意图。
本实施例中,该装置可以包括:
状态数据维护模块100,用于根据接收到的多个其他节点的节点状态信息以二进制数的形式进行组合,得到节点状态数据;
待转发节点确定模块200,用于当本地的磁盘状态为脱机状态时,根据节点状态数据进行二进制逻辑运算,得到待转发节点;
数据转发模块300,用于将待转发数据发送至待转发节点。
可选的,该状态数据维护模块100,可以包括:
节点信息接收单元,用于接收多个其他节点发送的节点状态信息;
二进制转换单元,用于将节点状态信息转换为节点编号对应位数的二进制数;
组合单元,用于将所有的二进制数相加,得到节点状态数据。
可选的,该装置还可以包括:
状态数据更新模块,用于根据接收到的节点状态信息对节点状态数据进行更新,得到新的节点状态数据。
可选的,该待转发节点确定模块200,可以包括:
逻辑与运算单元,用于当所述本地的磁盘状态为脱机状态时,将所述节点状态数据的节点状态二进制数与所述节点状态数据的磁盘状态二进制数进行逻辑与运算,得到可用节点;
转发节点确定单元,用于根据节点编号从小到大的顺序从所述可用节点中确定所述待转发节点。
可选的,该装置还可以包括:
脱机状态查询模块,用于当确定所述待转发节点时,判断所述本地的磁盘状态是否为脱机状态;若是,则执行所述将待转发数据发送至所述待转发节点的步骤;若否,则发送停止转发消息。
本申请实施例还提供一种服务器,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如以上实施例所述的节点数据转发方法的步骤。
本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如以上实施例所述的节点数据转发方法的步骤。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上对本申请所提供的一种节点数据转发方法、节点数据转发装置、服务器以及计算机可读存储介质进行了详细介绍。本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。
Claims (10)
1.一种节点数据转发方法,其特征在于,包括:
根据接收到的多个其他节点的节点状态信息以二进制数的形式进行组合,得到节点状态数据;
当本地的磁盘状态为脱机状态时,根据所述节点状态数据进行二进制逻辑运算,得到待转发节点;
将待转发数据发送至所述待转发节点。
2.根据权利要求1所述的节点数据转发方法,其特征在于,根据接收到的多个其他节点的节点状态信息以二进制数的形式进行组合,得到节点状态数据,包括:
接收所述多个其他节点发送的节点状态信息;
将所述节点状态信息转换为节点编号对应位数的二进制数;
将所有的所述二进制数相加,得到节点状态数据。
3.根据权利要求1所述的节点数据转发方法,其特征在于,还包括:
根据接收到的节点状态信息对所述节点状态数据进行更新,得到新的节点状态数据。
4.根据权利要求1所述的节点数据转发方法,其特征在于,当本地的磁盘状态为脱机状态时,根据所述节点状态数据进行二进制逻辑运算,得到待转发节点,包括:
当所述本地的磁盘状态为脱机状态时,将所述节点状态数据的节点状态二进制数与所述节点状态数据的磁盘状态二进制数进行逻辑与运算,得到可用节点;
根据节点编号从小到大的顺序从所述可用节点中确定所述待转发节点。
5.根据权利要求1至4任一项所述的节点数据转发方法,其特征在于,还包括:
当确定所述待转发节点时,判断所述本地的磁盘状态是否为脱机状态;
若是,则执行所述将待转发数据发送至所述待转发节点的步骤;
若否,则发送停止转发消息。
6.一种节点数据转发装置,其特征在于,包括:
状态数据维护模块,用于根据接收到的多个其他节点的节点状态信息以二进制数的形式进行组合,得到节点状态数据;
待转发节点确定模块,用于当本地的磁盘状态为脱机状态时,根据所述节点状态数据进行二进制逻辑运算,得到待转发节点;
数据转发模块,用于将待转发数据发送至所述待转发节点。
7.根据权利要求6所述的节点数据转发装置,其特征在于,所述状态数据维护模块,包括:
节点信息接收单元,用于接收所述多个其他节点发送的节点状态信息;
二进制转换单元,用于将所述节点状态信息转换为节点编号对应位数的二进制数;
组合单元,用于将所有的所述二进制数相加,得到节点状态数据。
8.根据权利要求6所述的节点数据转发装置,其特征在于,还包括:
状态数据更新模块,用于根据接收到的节点状态信息对所述节点状态数据进行更新,得到新的节点状态数据。
9.一种服务器,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至5任一项所述的节点数据转发方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述的节点数据转发方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011033776.5A CN112000299B (zh) | 2020-09-27 | 2020-09-27 | 一种节点数据转发方法及相关装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011033776.5A CN112000299B (zh) | 2020-09-27 | 2020-09-27 | 一种节点数据转发方法及相关装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112000299A true CN112000299A (zh) | 2020-11-27 |
CN112000299B CN112000299B (zh) | 2022-08-16 |
Family
ID=73474399
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011033776.5A Active CN112000299B (zh) | 2020-09-27 | 2020-09-27 | 一种节点数据转发方法及相关装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112000299B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130064088A1 (en) * | 2011-09-09 | 2013-03-14 | Futurewei Technologies, Inc. | Apparatus and System for Packet Routing and Forwarding in an Interior Network |
CN109076108A (zh) * | 2016-05-13 | 2018-12-21 | 皇家Kpn公司 | 接收兴趣消息的网络节点、端点节点和方法 |
CN109582502A (zh) * | 2018-12-03 | 2019-04-05 | 郑州云海信息技术有限公司 | 存储系统故障处理方法、装置、设备及可读存储介质 |
CN109669642A (zh) * | 2018-12-24 | 2019-04-23 | 广东浪潮大数据研究有限公司 | 存储系统的节点加入方法、系统、装置及可读存储介质 |
-
2020
- 2020-09-27 CN CN202011033776.5A patent/CN112000299B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130064088A1 (en) * | 2011-09-09 | 2013-03-14 | Futurewei Technologies, Inc. | Apparatus and System for Packet Routing and Forwarding in an Interior Network |
CN109076108A (zh) * | 2016-05-13 | 2018-12-21 | 皇家Kpn公司 | 接收兴趣消息的网络节点、端点节点和方法 |
CN109582502A (zh) * | 2018-12-03 | 2019-04-05 | 郑州云海信息技术有限公司 | 存储系统故障处理方法、装置、设备及可读存储介质 |
CN109669642A (zh) * | 2018-12-24 | 2019-04-23 | 广东浪潮大数据研究有限公司 | 存储系统的节点加入方法、系统、装置及可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112000299B (zh) | 2022-08-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107621973B (zh) | 一种跨集群的任务调度方法及装置 | |
CN111083179B (zh) | 物联网云平台、基于物联网云平台的设备交互方法及装置 | |
US11200123B2 (en) | Consensus process recovery method and related node | |
CN110018996B (zh) | 一种分布式存储系统的快照回滚方法及相关装置 | |
CN114049123B (zh) | 区块链的共识方法、装置、计算机设备和存储介质 | |
CN108960797B (zh) | 区块生成及验证方法、装置、设备和存储介质 | |
CN110618974A (zh) | 一种数据存储方法、装置、设备及存储介质 | |
CN113342893B (zh) | 基于区块链的节点同步方法、装置、存储介质及服务器 | |
CN112000299B (zh) | 一种节点数据转发方法及相关装置 | |
CN107203545B (zh) | 一种数据处理方法及装置 | |
CN109919768B (zh) | 区块生成方法、装置、介质和计算设备 | |
CN111352803A (zh) | 业务数据处理方法、装置、设备和存储介质 | |
CN115866017A (zh) | 消息处理方法、装置、通信设备及存储介质 | |
CN112541548B (zh) | 关系网络的生成方法、装置、计算机设备及存储介质 | |
CN111488490B (zh) | 视频聚类方法、装置、服务器及存储介质 | |
CN114138786A (zh) | 一种联机交易消息去重方法、装置、介质、产品和设备 | |
CN112905699A (zh) | 一种全量数据比对方法、装置、设备及存储介质 | |
CN112169341B (zh) | 一种游戏数据处理的方法、装置、设备及存储介质 | |
CN111638980A (zh) | 基于内存映射的消息处理方法、装置、系统和存储介质 | |
CN110716692A (zh) | 读取性能提升方法、装置、存储节点及数据读取方法 | |
CN117278521B (zh) | 资产认定方法和计算机设备 | |
CN112801769B (zh) | 账务数据处理方法、装置及系统 | |
CN114666206B (zh) | 一种基于Raft的空数据节点加入方法 | |
CN115103322B (zh) | 订阅合并方法、装置、电子设备、存储介质及产品 | |
CN110046192B (zh) | 请求信息的序号生成系统和方法 |
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 |