本发明涉及信息处理技术,具体涉及一种信息处理方法及电子设备。
背景技术:
现有技术,虚拟机的迁移可采用预拷贝(pre-copy)机制,迁移开始之后,被迁移虚拟机在源主机不停止运行,在目的主机上申请运行虚拟机所需的资源,迁移通过循环迭代拷贝,将源主机虚拟机的内存数据发送至目的主机。采用pre-copy机制的迁移过程通常可分为以下几个阶段:迭代阶段、宕机阶段和恢复阶段。
现有技术中,宕机阶段表示在虚拟机处于关闭状态时的内存数据以及设备状态的迁移过程,而宕机阶段对应的宕机时间对于服务类应用非常重要,若宕机时间过长,使得虚拟机无法提供各种服务。
技术实现要素:
为解决现有存在的技术问题,本发明实施例提供一种信息处理方法及电子设备。
为达到上述目的,本发明实施例的技术方案是这样实现的:
本发明实施例提供了一种信息处理方法,应用于第一电子设备中;所述方法包括:
第一电子设备检测待拷贝的内存数据是否满足第一预设条件;其中,所述内存数据为所述第一电子设备向第二电子设备迭代拷贝的内存数据;
检测到待拷贝的内存数据不满足第一预设条件时,基于目标宕机时间和待拷贝的内存数据确定第一迭代超时时间,将原迭代超时时间更新为所述第一迭代超时时间;
检测到待拷贝的内存数据满足第一预设条件时,将原迭代超时时间更新为所述第二迭代超时时间;
按照所述目标宕机时间和更新后的迭代超时时间向所述第二电子设备迭代拷贝内存数据;
其中,所述原迭代超时时间为上一次迭代拷贝内存数据对应的迭代超时时间。
上述方案中,所述第一电子设备检测待拷贝的内存数据是否满足第一预设条件,包括:
所述第一电子设备检测待拷贝的内存数据是否小于期望传输数据量;其中,所述期望传输数据与目标宕机时间相关联;
所述检测到待拷贝的内存数据不满足第一预设条件,包括:
检测到待拷贝的内存数据不小于期望传输数据量时,确定检测到待拷贝的内存数据不满足第一预设条件;
相应的,所述检测到待拷贝的内存数据满足第一预设条件,包括:
检测到待拷贝的内存数据小于期望传输数据量时,确定检测到待拷贝的内存数据满足第一预设条件。
上述方案中,所述第一电子设备检测待拷贝的内存数据是否满足第一预设条件之前,所述方法还包括:
所述第一电子设备首次向所述第二电子设备拷贝内存数据时,基于预先配置的最大迭代超时时间向所述第二电子设备拷贝内存数据;
将预先配置的最大宕机时间置为所述目标宕机时间。
上述方案中,检测到待拷贝的内存数据首次满足第一预设条件时时,所述将原迭代超时时间更新为第二迭代超时时间,包括:
将预先配置的最小宕机时间置为所述目标宕机时间,基于所述目标宕机时间和待拷贝的内存数据确定第二迭代超时时间,将原迭代超时时间更新为所述第二迭代超时时间。
上述方案中,所述方法还包括:
基于所述最小宕机时间确定重新期望传输数据量;当待拷贝的内存数据不小于重新确定的期望传输数据量时,按预设步长调整预先配置的最小宕机时间作为目标宕机时间,基于所述目标宕机时间和待拷贝的内存数据确定第二迭代超时时间。
上述方案中,所述将原迭代超时时间更新为所述第二迭代超时时间后,所述方法还包括:
所述第一电子设备将自身特定组件存储的特定数据拷贝至所述第二电子设备,并且清除所述特定数据。
上述方案中,所述方法还包括:所述第一电子设备检测待拷贝的内存数据是否小于目标传输数据量;其中,所述目标传输数据量与所述目标宕机时间相关联;
当所述第一电子设备检测待拷贝的内存数据小于目标传输数据量时,控制切换至宕机状态。
本发明实施例还提供了一种电子设备,所述电子设备包括:存储器、控制器和通信接口;其中,
所述存储器,用于存储待拷贝的内存数据;
所述控制器,用于检测所述存储器中存储的待拷贝的内存数据是否满足第一预设条件;其中,所述内存数据为所述电子设备向其他电子设备迭代拷贝的内存数据;检测到待拷贝的内存数据不满足第一预设条件时,基于目标宕机时间和待拷贝的内存数据确定第一迭代超时时间,将原迭代超时时间更新为所述第一迭代超时时间;检测到待拷贝的内存数据满足第一预设条件时,将原迭代超时时间更新为所述第二迭代超时时间;所述原迭代超时时间为上一次迭代拷贝内存数据对应的迭代超时时间;
所述通信接口,用于按照所述控制器确定的目标宕机时间和更新后的迭代超时时间向所述其他电子设备迭代拷贝内存数据。
上述方案中,所述控制器,用于检测待拷贝的内存数据是否小于期望传输数据量;其中,所述期望最大传输数据与目标宕机时间相关联;检测到待拷贝的内存数据不小于期望传输数据量时,确定检测到待拷贝的内存数据不满足第一预设条件;检测到待拷贝的内存数据小于期望传输数据量时,确定检测到待拷贝的内存数据满足第一预设条件。
上述方案中,所述通信接口,还用于在所述控制器检测待拷贝的内存数据是否满足第一预设条件之前,且首次向所述其他电子设备拷贝内存数据时,基于预先配置的最大迭代超时时间向所述其他电子设备拷贝内存数据;
所述控制器,还用于将预先配置的最大宕机时间置为所述目标宕机时间。
上述方案中,所述控制器,用于检测到待拷贝的内存数据首次满足第一预设条件时,将预先配置的最小宕机时间置为所述目标宕机时间,基于所述目标宕机时间和待拷贝的内存数据确定第二迭代超时时间,将原迭代超时时间更新为所述第二迭代超时时间。
上述方案中,所述控制器,用于基于所述最小宕机时间重新确定期望传输数据量;当待拷贝的内存数据不小于重新确定的期望传输数据量时,按预设步长调整预先配置的最小宕机时间作为目标宕机时间,基于所述目标宕机时间和待拷贝的内存数据确定第二迭代超时时间。
上述方案中,所述通信接口,还用于所述控制器将原迭代超时时间更新为所述第二迭代超时时间后,将所述存储器的特定存储区域存储的特定数据拷贝至所述其他电子设备;
所述控制器,还用于清除所述存储器的特定存储区域中存储的特定数据。
上述方案中,所述控制器,还用于检测待拷贝的内存数据是否小于目标传输数据量;其中,所述目标传输数据量与所述目标宕机时间相关联;当所述第一电子设备检测待拷贝的内存数据小于目标传输数据量时,控制切换至宕机状态。
本发明实施例提供的信息处理方法及电子设备,所述方法包括:第一电子设备检测待拷贝的内存数据是否满足第一预设条件;其中,所述内存数据为所述第一电子设备向第二电子设备迭代拷贝的内存数据;检测到待拷贝的内存数据不满足第一预设条件时,基于目标宕机时间和待拷贝的内存数据确定第一迭代超时时间,将原迭代超时时间更新为所述第一迭代超时时间;检测到待拷贝的内存数据满足第一预设条件时,将原迭代超时时间更新为第二迭代超时时间;按照所述目标宕机时间和更新后的迭代超时时间向所述第二电子设备迭代拷贝内存数据;其中,所述原迭代超时时间为上一次迭代拷贝内存数据对应的迭代超时时间。采用本发明实施例的技术方案,通过对迭代超时时间的动态调整,缩短迭代拷贝过程中的宕机时间,也避免了由于虚拟机宕机时间过长无法提供服务的问题。
附图说明
图1为本发明实施例一的信息处理方法的流程示意图;
图2为本发明实施例二的信息处理方法的流程示意图;
图3为本发明实施例的信息处理方法的一种应用流程示意图;
图4为本发明实施例的电子设备的组成结构示意图。
具体实施方式
下面结合附图及具体实施例对本发明作进一步详细的说明。
实施例一
本发明实施例提供了一种信息处理方法。图1为本发明实施例一的信息处理方法的流程示意图;如图1所示,所述方法包括:
步骤101:第一电子设备检测待拷贝的内存数据是否满足第一预设条件;其中,所述内存数据为所述第一电子设备向第二电子设备迭代拷贝的内存数据。
步骤102:检测到待拷贝的内存数据不满足第一预设条件时,基于目标宕机时间和待拷贝的内存数据确定第一迭代超时时间,将原迭代超时时间更新为所述第一迭代超时时间;其中,所述原迭代超时时间为上一次迭代拷贝内存数据对应的迭代超时时间。
步骤103:检测到待拷贝的内存数据满足第一预设条件时,将原迭代超时时间更新为第二迭代超时时间。
步骤104:按照所述目标宕机时间和更新后的迭代超时时间向所述第二电子设备迭代拷贝内存数据。
本发明实施例的信息处理方法应用于第一电子设备中,作为源电子设备的第一电子设备将待拷贝的内存数据整体拷贝至作为目标电子设备的第二电子设备中;其中,所述第一电子设备和所述第二电子设备具体可以是个人计算机(pc,personalcomputer)或服务器。具体的,所述第一电子设备中包括虚拟出的至少一个虚拟机,每个虚拟机对应一存储区域;相应的,所述第二电子设备中虚拟出与所述第一电子设备中配置相同的虚拟机。本实施例中所述的待拷贝的内存数据为所述至少一个虚拟机中任一虚拟机对应的内存数据;所述内存数据可以包括虚拟机对应的存储区域中存储的数据,也包括脏页数据。
通常情况下,所述第一电子设备向第二电子设备迭代拷贝内存数据的过程可包括随机扩容阶段(可称为rambulk阶段)、迭代阶段、宕机阶段和恢复阶段。所述随机扩容阶段,指的是虚拟机还在第一电子设备上运行时,第一电子设备向第二电子设备迭代拷贝内存数据的阶段。进一步地,在每次拷贝内存数据之前,检查上一次拷贝的内存数据是否发生变化;若检查到上一次拷贝的内存数据发生了变化,则将变化的内存数据称为脏页(dirtypage)数据,并将脏页数据重复拷贝至第二电子设备,这一过程称为迭代阶段。第一电子设备持续上述的迭代拷贝过程,随着迭代次数的增加,待拷贝的内存数据逐渐减少,当待拷贝的内存数据满足一定条件时,会控制第一电子设备暂停虚拟机的运行,这一过程可称为宕机阶段;在宕机阶段,第一电子设备依旧会传输上一次拷贝产生的脏页数据以及电子设备中的设备状态数据。而本发明实施例的信息处理方法正是通过寻找较佳的进入宕机状态的时间点以及确定合适的迭代超时时间从而解决现有技术中宕机时间过程的问题。
基于此,本实施例中,所述第一电子设备检测待拷贝的内存数据是否满足第一预设条件,包括:所述第一电子设备检测待拷贝的内存数据是否小于期望传输数据量;其中,所述期望传输数据与目标宕机时间相关联;所述检测到待拷贝的内存数据不满足第一预设条件,包括:检测到待拷贝的内存数据不小于期望传输数据量时,确定检测到待拷贝的内存数据不满足第一预设条件;相应的,所述检测到待拷贝的内存数据满足第一预设条件,包括:检测到待拷贝的内存数据小于期望传输数据量时,确定检测到待拷贝的内存数据满足第一预设条件。
作为一种实施方式,所述第一电子设备检测待拷贝的内存数据是否满足第一预设条件之前,所述方法还包括:所述第一电子设备首次向所述第二电子设备拷贝内存数据时,基于预先配置的最大迭代超时时间向所述第二电子设备拷贝内存数据;将预先配置的最大宕机时间置为所述目标宕机时间。
具体的,由于期望待传输数据量=系数×目标宕机时间×预测带宽;其中,所述系数为预先配置的权重系数。而目标宕机时间(dt)=待拷贝的内存数据/预测带宽;所述待拷贝的内存数据也可理解为遗留的内存数据;设定rn表示第n次迭代的待拷贝的内存数据;dn表示第n次迭代的脏页率;脏页率表示脏页数据占所有内存数据的比率;bn表示第n次迭代的带宽;tn表示第n次迭代的超时时间,则有:rn+1=dt×bn=dn×tn+rn-bn×tn;则tn=(rn-dt×bn)/(bn–dn);则本实施例中可基于上述表达式对迭代超时时间进行动态调整。
本实施例中,在第一电子设备首次向第二电子设备拷贝内存数据时,按照预先配置的最大迭代超时时间向所述第二电子设备拷贝内存数据,其中,所述最大迭代超时时间可设置为最大整数,可以理解为,首次向第二电子设备迭代拷贝内存数据时,迭代超时时间为无穷大,这样,首次迭代的结束条件即为rambulk阶段完成,此时,将目标宕机时间设置为预先配置的最大宕机时间。进一步地,rambulk阶段完成,进入本实施例中新增加的准备阶段,所述准备阶段的目标是使待拷贝的内存数据尽快接近期望传输数据量;其中,所述期望传输数据量为在满足所述最大宕机时间的传输数据量,则此时,所述期望传输数据量满足以下表达式:期望传输数据量=系数×最大宕机时间×预测带宽;其中,所述系数为预先配置的权重系数。
则本实施例采用上述表达式的计算方式确定期望传输数据量,以及检测待拷贝的内存数据的数据量,比较所述期望传输数据量和待拷贝的内存数据,当所述待拷贝的内存数据不小于期望传输数据量时,确定检测到待拷贝的内存数据不满足第一预设条件,进一步基于目标宕机时间(也即所述最大宕机时间)和所述待拷贝的内存数据确定第一迭代超时时间;其中,所述第一迭代超时时间满足以下表达式:第一迭代超时时间=(待拷贝的内存数据-系数×最大宕机时间×预测带宽)/(预测带宽-预测脏页率)。其中,所述待拷贝的内存数据为上一次迭代拷贝完成后遗留的待拷贝的内存数据;所述系数为预先配置的权重系数;所述预测脏页率可根据上一次迭代拷贝完成后产生的脏页数据与所述待拷贝的内存数据计算获得。
另一方面,当所述待拷贝的内存数据小于期望传输数据量时,确定检测到待拷贝的内存数据满足第一预设条件,此时进入寻找最优宕机时机阶段。本实施例中,在所述寻找最优宕机时机阶段,动态调整目标宕机时间,基于调整后的目标宕机时间确定第二迭代超时时间,将原迭代超时时间更新为所述第二迭代超时时间。
其中,检测到待拷贝的内存数据首次满足第一预设条件时,所述方法还包括:将预先配置的最小宕机时间置为所述目标宕机时间,基于所述目标宕机时间和待拷贝的内存数据确定第二迭代超时时间,将原迭代超时时间更新为所述第二迭代超时时间。
本实施例中,基于动态调整后的目标宕机时间和更新后的迭代超时时间(例如第一迭代超时时间和第二迭代超时时间)向第二电子设备迭代拷贝内存数据。
本实施例中,所述将原迭代超时时间更新为所述第二迭代超时时间后,所述方法还包括:所述第一电子设备将自身特定组件存储的特定数据拷贝至所述第二电子设备,并且清除所述特定数据。
具体的,所述特定组件具体可以为数据块(也可称为块设备),数据块将内存数据存储在固定大小的块存储区域中,每个数据块均有对应的地址;数据块之间相对独立。则在第一电子设备向第二电子设备迭代拷贝内存数据的过程中,所述第一电子设备将原迭代超时时间更新为所述第二迭代超时时间、以及按照所述第二迭代超时时间向所述第二电子设备迭代拷贝内存数据后,将已拷贝的内存数据对应的特定组件清除。
采用本发明实施例的技术方案,通过对迭代超时时间的动态调整,缩短迭代拷贝过程中的宕机时间,也避免了由于虚拟机宕机时间过长无法提供服务的问题。
实施例二
基于实施例一,本发明实施例还提供了一种信息处理方法。图2为本发明实施例二的信息处理方法的流程示意图;如图2所示,所述方法包括:
步骤201:第一电子设备首次向所述第二电子设备拷贝内存数据时,基于预先配置的最大迭代超时时间向所述第二电子设备拷贝内存数据;将预先配置的最大宕机时间置为目标宕机时间。其中,所述内存数据为所述第一电子设备向第二电子设备迭代拷贝的内存数据。
步骤202:首次拷贝内存数据完成后,所述第一电子设备检测待拷贝的内存数据是否小于期望传输数据量。
步骤203:检测到待拷贝的内存数据不小于期望传输数据量时,基于目标宕机时间和待拷贝的内存数据确定第一迭代超时时间,将原迭代超时时间更新为所述第一迭代超时时间。其中,所述原迭代超时时间为上一次迭代拷贝内存数据对应的迭代超时时间。
步骤204:首次检测到待拷贝的内存数据小于期望传输数据量时,将预先配置的最小宕机时间置为目标宕机时间,基于所述目标宕机时间和待拷贝的内存数据确定第二迭代超时时间,将原迭代超时时间更新为所述第二迭代超时时间。
步骤205:基于所述最小宕机时间重新确定期望传输数据量;当待拷贝的内存数据不小于重新确定的期望传输数据量时,按预设步长调整预先配置的最小宕机时间作为目标宕机时间,基于所述目标宕机时间和待拷贝的内存数据确定第二迭代超时时间,将原迭代超时时间更新为所述第二迭代超时时间。
步骤206:按照所述目标宕机时间和更新后的迭代超时时间向所述第二电子设备迭代拷贝内存数据。
本实施例中,在第一电子设备首次向第二电子设备拷贝内存数据时,按照预先配置的最大迭代超时时间向所述第二电子设备拷贝内存数据,其中,所述最大迭代超时时间可设置为最大整数,可以理解为,首次向第二电子设备迭代拷贝内存数据时,迭代超时时间为无穷大,这样,首次迭代的结束条件即为rambulk阶段完成,此时,将目标宕机时间设置为预先配置的最大宕机时间。进一步地,rambulk阶段完成,进入本实施例中新增加的准备阶段,所述准备阶段的目标是使待拷贝的内存数据尽快接近期望传输数据量;其中,所述期望传输数据量为在满足所述最大宕机时间的传输数据量,则此时,所述期望传输数据量满足以下表达式:
期望传输数据量=第一系数×最大宕机时间×预测带宽(1)
其中,所述第一系数为预先配置的权重系数;所述预测带宽可基于上一次拷贝内存数据时获得的带宽获得,也可以根据获得的网络参数预估确定。则本实施例在准备阶段可采用表达式(1)的计算方式确定期望传输数据量,以及检测待拷贝的内存数据的数据量,比较所述期望传输数据量和待拷贝的内存数据,当所述待拷贝的内存数据不小于期望传输数据量时,确定检测到待拷贝的内存数据不满足第一预设条件,进一步基于目标宕机时间(也即所述最大宕机时间)和所述待拷贝的内存数据确定第一迭代超时时间;其中,所述第一迭代超时时间满足以下表达式:
第一迭代超时时间=(待拷贝的内存数据-系数×最大宕机时间×预测带宽)/(预测带宽-预测脏页率)(2)
其中,所述待拷贝的内存数据为上一次迭代拷贝完成后遗留的待拷贝的内存数据;所述系数为预先配置的权重系数;所述预测脏页率可根据上一次迭代拷贝完成后产生的脏页数据与所述待拷贝的内存数据计算获得。则所述第一电子设备基于所述第一迭代超时时间和所述最大宕机时间向所述第二电子设备迭代拷贝内存数据;所述第一迭代超时时间为对应于准备阶段的迭代超时时间。
另一方面,随着迭代次数的增多,而遗留的待拷贝的内存数据的减少,当检测到所述待拷贝的内存数据小于所述期望传输数据量(所述期望传输数据量满足表达式(1)所示的期望传输数据量)、且是首次检测到所述待拷贝的内存数据小于期望传输数据量时,进入寻找最优宕机时机阶段。在首次进入所述寻找最优宕机时机阶段时,首先,调整所述目标宕机时间为预先配置的最小宕机时间,所述最小宕机时间例如10毫秒;基于所述最小宕机时间和待拷贝的内存数据确定第二迭代超时时间;此时,所述第二迭代超时时间满足以下表达式:
第二迭代超时时间=(待拷贝的内存数据-最小宕机时间×预测带宽)/(预测单款-预测脏页率)(3)
则所述第一电子设备基于表达式(3)确定第二迭代超时时间,基于所述第二迭代超时时间向第二电子设备迭代拷贝内存数据;其中,所述第二迭代超时时间为对应于寻找最优宕机时机阶段的迭代超时时间;且此时所述期望传输数据量满足以下表达式:
期望传输数据量=最小宕机时间×预测带宽(4)
在迭代拷贝过程中,当待拷贝的内存数据无法小于期望传输数据量(此时所述期望传输数据量为满足表达式(4)的期望传输数据量)时,则检测到待拷贝的内存数据不小于期望传输数据量,所述第一电子设备按预设步长(所述预设步长例如10毫秒,当然不限于10毫秒的示例)调整作为目标宕机时间的最小宕机时间。进一步地,基于所述目标宕机时间和待拷贝的内存数据确定第二迭代超时时间;此时,所述第二迭代超时时间满足以下表达式:
第二迭代超时时间=(待拷贝的内存数据-目标宕机时间×预测带宽)/(预测单款-预测脏页率)(5)
其中,所述目标宕机时间为按预设步长调整后的最小宕机时间。
则所述第一电子设备基于更新后的第二迭代超时时间向第二电子设备迭代拷贝内存数据,且此时所述期望传输数据量满足以下表达式:
期望传输数据量=(最小宕机时间+调整时间)×预测带宽(6)
其中,所述调整时间为预设步长×调整次数。
则所述第一电子设备基于调整后的所述第二迭代超时时间以及调整后的目标宕机时间向第二电子设备迭代拷贝内存数据。
采用本发明实施例的技术方案,通过对迭代超时时间的动态调整,以及将特定组件(例如数据块)中的数据参与迭代并在拷贝结束后清除数据,以及对目标宕机时间进行迭代式调整,从而获得最优的宕机时间,进而缩短了迭代拷贝过程中的宕机时间,也避免了由于虚拟机宕机时间过长无法提供服务的问题。
实施例三
基于实施例二,本发明实施例还提供了一种信息处理方法,可参照图2所示,在实施例二提供的信息处理方法的基础上,所述方法包括:
步骤207:所述第一电子设备检测待拷贝的内存数据是否小于目标传输数据量,当所述第一电子设备检测待拷贝的内存数据小于目标传输数据量时,控制切换至宕机状态;其中,所述目标传输数据量与所述目标宕机时间相关联。所述目标宕机时间为与按预设步长调整后的最小宕机时间。
这里,所述目标传输数据量也即期望传输数据量,具体为满足表达式(6)的期望传输数据量。具体的,当检测到遗留的待拷贝的内存数据的数据量小于基于表达式(6)计算获得的目标传输数据量时,所述第一电子设备控制切换至宕机状态,也即控制所述第一电子设备中的数据迁移的虚拟机停止运行。
本实施例中,作为一种实施方式,当第一电子设备处于寻找最优宕机时机阶段时,也即所述第一电子设备中的待拷贝的内存数据满足第一预设条件时,若检测到所述待拷贝的内存数据不小于期望传输数据量时,也即重新检测到所述待拷贝的内存数据不满足第一预设条件时,重新切换至准备状态,执行前述处于准备状态时的第一迭代超时时间的重新确定,基于所述第一迭代超时时间和预先配置的最大宕机时间向第二电子设备迭代拷贝内存数据。
本实施例中,所述将原迭代超时时间更新为所述第二迭代超时时间后,所述方法还包括:所述第一电子设备将自身特定组件存储的特定数据拷贝至所述第二电子设备,并且清除所述特定数据。
具体的,所述特定组件具体可以为数据块(也可称为块设备),数据块将内存数据存储在固定大小的块存储区域中,每个数据块均有对应的地址;数据块之间相对独立。则在第一电子设备向第二电子设备迭代拷贝内存数据的过程中,所述第一电子设备将原迭代超时时间更新为所述第二迭代超时时间、以及按照所述第二迭代超时时间向所述第二电子设备迭代拷贝内存数据后,将已拷贝的内存数据对应的特定组件清除。
采用本发明实施例的技术方案,通过对迭代超时时间的动态调整,以及将特定组件(例如数据块)中的数据参与迭代并在拷贝结束后清除数据,以及对目标宕机时间进行迭代式调整,从而获得最优的宕机时间,进而缩短了迭代拷贝过程中的宕机时间,也避免了由于虚拟机宕机时间过长无法提供服务的问题。
基于实施例一或实施例二所述的信息处理方法,本发明实施例还提供了一种信息处理方法,图3为本发明实施例的信息处理方法的一种应用流程示意图;如图3所示,在本应用中,以迭代过程包括:rambulk阶段、准备阶段、寻找最优宕机时机阶段为例,所述方法包括:
步骤301:在rambulk阶段,按照预先配置的最大迭代超时时间向第二电子设备拷贝内存数据;可以理解为,首次向第二电子设备迭代拷贝内存数据时,迭代超时时间为无穷大,即所述迭代超时时间为最大整数。此时,将目标宕机时间设置为预先配置的最大宕机时间。进一步地,rambulk阶段完成。
步骤302:判断待拷贝的内存数据是否小于期望传输数据量,所述期望数据传输量为满足表达式(1)的期望数据传输量。当判断结果为待拷贝的内存数据不小于期望传输数据量时,执行步骤303;当判断结果为待拷贝的内存数据小于期望传输数据量时,执行步骤304至步骤309。
步骤303:所述第一电子设备进入准备阶段,在准备阶段,目标宕机时间为预先配置的最大宕机时间,则基于所述最大宕机时间和待拷贝的内存数据确定第一迭代超时时间,将迭代超时时间更新为所述第一迭代超时时间。其中,所述第一迭代超时时间满足表达式(2)所示。而第一电子设备基于所述最大宕机时间和所述第一迭代超时时间向第二电子设备迭代拷贝内存数据,在每一轮拷贝内存数据完成后,重新执行步骤302,判定遗留的待拷贝的内存数据是否满足期望传输数据量,从而使第一电子设备是继续停留在准备阶段,还是切换至步骤304中所述的寻找宕机时机阶段。
步骤304至步骤305:所述第一电子设备进入寻找宕机时机阶段。在寻找宕机时机阶段,目标宕机时间为预先配置的最小宕机时间,则基于所述最小宕机时间和待拷贝的内存数据确定第二迭代超时时间,将迭代超时时间更新为所述第二迭代超时时间。其中,所述第二迭代超时时间满足表达式(3)所示,而第一电子设备基于所述最小宕机时间和所述第二迭代超时时间向第二电子设备迭代拷贝内存数据,所述第一电子设备每向第二电子设备拷贝一次内存数据,则迭代次数加一。
步骤306:刷新数据块,即清除数据块中的数据。
步骤307:判断待拷贝的内存数据是否小于目标传输数据量;当判断结果为待拷贝的内存数据小于目标传输数据量,执行步骤310:进入宕机阶段;当判断结果为待拷贝的内存数据不小于目标传输数据量,执行步骤308:判断迭代次数是否小于阈值,所述阈值为预先配置;当迭代次数不小于阈值时,重新执行步骤304,将目标宕机时间置为最小宕机时间,重新执行步骤304至步骤307;当迭代次数小于阈值时,执行步骤309:按预设步长调整最小宕机时间作为目标宕机时间,进一步地执行步骤305,重新依据调整后的目标宕机时间更新第二迭代超时时间。
在上述过程中,当目标宕机时间为最小宕机时间时,所述目标传输数据量为满足表达式(4)的期望传输数据量。当目标宕机时间为按照预设步长调整后的最小宕机时间时,所述目标传输数据量为满足表达式(6)的期望传输数据量。
实施例四
本发明实施例还提供了一种电子设备。图4为本发明实施例的电子设备的组成结构示意图;如图4所示,所述电子设备包括:存储器41、控制器42和通信接口43;其中,
所述存储器41,用于存储待拷贝的内存数据;
所述控制器42,用于检测所述存储器41中存储的待拷贝的内存数据是否满足第一预设条件;其中,所述内存数据为向其他电子设备迭代拷贝的内存数据;检测到待拷贝的内存数据不满足第一预设条件时,基于目标宕机时间和待拷贝的内存数据确定第一迭代超时时间,将原迭代超时时间更新为所述第一迭代超时时间;检测到待拷贝的内存数据满足第一预设条件时,将原迭代超时时间更新为第二迭代超时时间;所述原迭代超时时间为上一次迭代拷贝内存数据对应的迭代超时时间;
所述通信接口43,用于按照所述控制器42确定的目标宕机时间和更新后的迭代超时时间向所述其他电子设备迭代拷贝内存数据。
本实施例中,所述通信接口43,还用于所述控制器42将原迭代超时时间更新为所述第二迭代超时时间后,将所述存储器41的特定存储区域存储的特定数据拷贝至所述其他电子设备;
所述控制器42,还用于清除所述存储器41的特定存储区域中存储的特定数据。
本领域技术人员应当理解,本发明实施例的电子设备中各处理单元的功能,可参照前述信息处理方法的相关描述而理解,本发明实施例的电子设备中各处理单元,可通过实现本发明实施例所述的功能的模拟电路而实现,也可以通过执行本发明实施例所述的功能的软件在智能终端上的运行而实现。
实施例五
本发明实施例还提供了一种电子设备。如图4所示,所述电子设备包括:存储器41、控制器42和通信接口43;其中,
所述存储器41,用于存储待拷贝的内存数据;其中,所述内存数据为向其他电子设备迭代拷贝的内存数据;
所述通信接口43,用于首次向所述其他电子设备拷贝所述存储器41存储的内存数据时,基于预先配置的最大迭代超时时间向所述其他电子设备拷贝内存数据;
所述控制器42,用于将预先配置的最大宕机时间置为所述目标宕机时间;还用于首次拷贝内存数据完成后,检测待拷贝的内存数据是否小于期望传输数据量;检测到待拷贝的内存数据不小于期望传输数据量时,基于目标宕机时间和待拷贝的内存数据确定第一迭代超时时间,将原迭代超时时间更新为所述第一迭代超时时间;首次检测到待拷贝的内存数据小于期望最大传输数据量时,将预先配置的最小宕机时间置为目标宕机时间,基于所述目标宕机时间和待拷贝的内存数据确定第二迭代超时时间,将原迭代超时时间更新为所述第二迭代超时时间;基于所述最小宕机时间重新确定期望传输数据量;当待拷贝的内存数据不小于重新确定的期望传输数据量时,按预设步长调整预先配置的最小宕机时间作为目标宕机时间,基于所述目标宕机时间和待拷贝的内存数据确定第二迭代超时时间,将原迭代超时时间更新为所述第二迭代超时时间;所述原迭代超时时间为上一次迭代拷贝内存数据对应的迭代超时时间;
所述通信接口43,用于按照所述控制器42确定的目标宕机时间和更新后的迭代超时时间向所述其他电子设备迭代拷贝内存数据。
本实施例中,所述通信接口43,还用于所述控制器42将原迭代超时时间更新为所述第二迭代超时时间后,将所述存储器41的特定存储区域存储的特定数据拷贝至所述其他电子设备;
所述控制器42,还用于清除所述存储器41的特定存储区域中存储的特定数据。
本领域技术人员应当理解,本发明实施例的电子设备中各处理单元的功能,可参照前述信息处理方法的相关描述而理解,本发明实施例的电子设备中各处理单元,可通过实现本发明实施例所述的功能的模拟电路而实现,也可以通过执行本发明实施例所述的功能的软件在智能终端上的运行而实现。
实施例六
基于实施例五,本发明实施例还提供了一种电子设备。如图4所示,所述电子设备包括:存储器41、控制器42和通信接口43;其中,
所述存储器41,用于存储待拷贝的内存数据;其中,所述内存数据为向其他电子设备迭代拷贝的内存数据;
所述通信接口43,用于首次向所述其他电子设备拷贝所述存储器41存储的内存数据时,基于预先配置的最大迭代超时时间向所述其他电子设备拷贝内存数据;
所述控制器42,用于将预先配置的最大宕机时间置为所述目标宕机时间;还用于首次拷贝内存数据完成后,检测待拷贝的内存数据是否小于期望传输数据量;检测到待拷贝的内存数据不小于期望传输数据量时,基于目标宕机时间和待拷贝的内存数据确定第一迭代超时时间,将原迭代超时时间更新为所述第一迭代超时时间;首次检测到待拷贝的内存数据小于期望传输数据量时,将预先配置的最小宕机时间置为目标宕机时间,基于所述目标宕机时间和待拷贝的内存数据确定第二迭代超时时间,将原迭代超时时间更新为所述第二迭代超时时间;基于所述最小宕机时间重新确定期望传输数据量;当待拷贝的内存数据不小于重新确定的期望传输数据量时,按预设步长调整预先配置的最小宕机时间作为目标宕机时间,基于所述目标宕机时间和待拷贝的内存数据确定第二迭代超时时间,将原迭代超时时间更新为所述第二迭代超时时间;所述原迭代超时时间为上一次迭代拷贝内存数据对应的迭代超时时间;
所述通信接口43,用于按照所述控制器42确定的目标宕机时间和更新后的迭代超时时间向所述其他电子设备迭代拷贝内存数据;
所述控制器42,还用于检测待拷贝的内存数据是否小于目标传输数据量;其中,所述目标传输数据量与所述目标宕机时间相关联;当所述第一电子设备检测待拷贝的内存数据小于目标传输数据量时,控制切换至宕机状态。
本实施例中,所述通信接口43,还用于所述控制器42将原迭代超时时间更新为所述第二迭代超时时间后,将所述存储器41的特定存储区域存储的特定数据拷贝至所述其他电子设备;
所述控制器42,还用于清除所述存储器41的特定存储区域中存储的特定数据。
本领域技术人员应当理解,本发明实施例的电子设备中各处理单元的功能,可参照前述信息处理方法的相关描述而理解,本发明实施例的电子设备中各处理单元,可通过实现本发明实施例所述的功能的模拟电路而实现,也可以通过执行本发明实施例所述的功能的软件在智能终端上的运行而实现。
本发明实施例四至实施例六中,所述电子设备中的控制器42,在实际应用中可由所述电子设备中的中央处理器(cpu,centralprocessingunit)、数字信号处理器(dsp,digitalsignalprocessor)、微控制单元(mcu,microcontrollerunit)或可编程门阵列(fpga,field-programmablegatearray)实现;所述电子设备中的通信接口43,在实际应用中可通过通信模组(包含:基础通信套件、操作系统、通信模块、标准化接口和协议等)及收发天线实现。
在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元,即可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
另外,在本发明各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。
或者,本发明上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。