本发明涉及数据处理,尤其涉及一种混合云数据同步方法、装置、电子设备及存储介质。
背景技术:
1、目前,对于某个服务,需要从私有云迁移到公有云上进行部署。其中,api相关代码已经部署在公有云,但是存储中间件都部署在私有云,如此进行数据操作的话需要跨网调用私有云上的存储中间件。
2、为了避免服务内存储中间件的跨网调用,将服务从私有云迁移到公有云进行部署的灰度期间,申请公有云的存储中间件,并通过公有云的存储中间件将私有云混合云数据同步到公有云。
3、由于私有云的存储中间件与公有云的存储中间件不同,无法实现私有云与公有云之间数据的双向同步。如果公有云的存储中间件出现不稳定的情况甚至故障,将服务切回至私有云,那么灰度期间写入到公有云存储的用户数据无法访问到,造成用户数据丢失。
技术实现思路
1、为了解决上述由于私有云的存储中间件与公有云的存储中间件不同,无法实现私有云与公有云之间数据的双向同步。如果公有云的存储中间件出现不稳定的情况甚至故障,将服务切回至私有云,那么灰度期间写入到公有云存储的用户数据无法访问到,造成用户数据丢失的技术问题,本发明实施例提供了一种混合云数据同步方法、装置、电子设备及存储介质。具体技术方案如下:
2、在本发明实施例的第一方面,首先提供了一种混合云数据同步方法,应用于公有云,所述方法包括:
3、确定目标服务对应的开关状态字段,其中,所述目标服务为从私有云迁移到公有云进行部署的服务;
4、获取所述开关状态字段对应的开关状态字段值,并判断所述开关状态字段值是否满足预设要求;
5、在所述开关状态字段值满足预设要求的情况下,触发公有云增量数据同步至私有云的同步消息;
6、将所述同步消息发送至消息集群,并通知私有云消费者消费所述消息集群中的所述同步消息,将公有云中增量数据同步至私有云。
7、在一个可选的实施方式中,所述判断所述开关状态字段值是否满足预设要求,包括:
8、判断所述开关状态字段值是否为预设第三数值,所述预设第三数值表征发送同步消息且消费同步消息;
9、所述在所述开关状态字段值满足预设要求的情况下,触发公有云增量数据同步至私有云的同步消息,包括:
10、在所述开关状态字段值为预设第三数值的情况下,触发公有云增量数据同步至私有云的同步消息。
11、在一个可选的实施方式中,所述在所述开关状态字段值为预设第三数值的情况下,触发公有云增量数据同步至私有云的同步消息,包括:
12、在所述开关状态字段值为预设第三数值的情况下,检测从私有云向公有云的单向数据同步是否已中断;
13、在从私有云向公有云的单向数据同步已中断的情况下,触发公有云增量数据同步至私有云的同步消息;
14、在从私有云向公有云的单向数据同步未中断的情况下,中断从私有云向公有云的单向数据同步,并触发公有云增量数据同步至私有云的同步消息。
15、在一个可选的实施方式中,所述获取所述开关状态字段对应的开关状态字段值之后,所述方法还包括:
16、判断所述开关状态字段值是否为预设第一数值,所述预设第一数值表征不发送同步消息且不消费同步消息;
17、在所述开关状态字段值为预设第一数值的情况下,获取所述目标服务对应的状态;
18、根据所述目标服务对应的状态,将增量数据存储至公有云或私有云。
19、在一个可选的实施方式中,所述获取所述开关状态字段对应的开关状态字段值之后,所述方法还包括:
20、判断所述开关状态字段值是否为预设第二数值,所述预设第二数值表征发送同步消息且不消费同步消息;
21、在所述开关状态字段值为预设第二数值的情况下,触发公有云增量数据同步至私有云的同步消息,并将所述同步消息发送至消息集群。
22、在一个可选的实施方式中,所述方法还包括:
23、在所述开关状态字段值为预设第二数值的情况下,执行从私有云向公有云的单向数据同步。
24、在一个可选的实施方式中,所述通知私有云消费者消费所述消息集群中的所述同步消息,将公有云中增量数据同步至私有云,包括:
25、通知私有云消费者按照同步消息的触发时刻,消费所述消息集群中的所述同步消息,将公有云中增量数据同步至私有云。
26、在本发明实施例的第二方面,还提供了一种混合云数据同步装置,所述装置包括:
27、字段确定模块,用于确定目标服务对应的开关状态字段,其中,所述目标服务为从私有云迁移到公有云进行部署的服务;
28、字段值获取模块,用于获取所述开关状态字段对应的开关状态字段值;
29、字段值判断模块,用于判断所述开关状态字段值是否满足预设要求;
30、消息触发模块,用于在所述开关状态字段值满足预设要求的情况下,触发公有云增量数据同步至私有云的同步消息;
31、消息发送模块,用于将所述同步消息发送至消息集群;
32、数据同步模块,用于通知私有云消费者消费所述消息集群中的所述同步消息,将公有云中增量数据同步至私有云。
33、在本发明实施例的第三方面,还提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
34、存储器,用于存放计算机程序;
35、处理器,用于执行存储器上所存放的程序时,实现上述第一方面中任一所述的混合云数据同步方法。
36、在本发明实施例的第四方面,还提供了一种存储介质,所述存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述第一方面中任一所述的混合云数据同步方法。
37、在本发明实施例的第五方面,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一所述的混合云数据同步方法。
38、本发明实施例提供的技术方案,确定目标服务对应的开关状态字段,其中,目标服务为从私有云迁移到公有云进行部署的服务,获取开关状态字段对应的开关状态字段值,并判断开关状态字段值是否满足预设要求,在开关状态字段值满足预设要求的情况下,触发公有云增量数据同步至私有云的同步消息,将同步消息发送至消息集群,并通知私有云消费者消费消息集群中的同步消息,将公有云中增量数据同步至私有云。通过确定目标服务对应的开关状态字段,并获取开关状态字段对应的开关状态字段值,在开关状态字段值满足预设要求的情况下,触发公有云增量数据同步至私有云的同步消息,将同步消息发送至消息集群,并通知私有云消费者消费消息集群中的同步消息,将公有云中增量数据同步至私有云,如此可以实现私有云与公有云之间数据的双向同步,保证数据的一致性,如果公有云的存储中间件出现不稳定的情况甚至故障,将服务切回至私有云,那么灰度期间写入到公有云存储的用户数据依然可以被访问到,避免用户数据丢失。
1.一种混合云数据同步方法,其特征在于,应用于公有云,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述判断所述开关状态字段值是否满足预设要求,包括:
3.根据权利要求2所述的方法,其特征在于,所述在所述开关状态字段值为预设第三数值的情况下,触发公有云增量数据同步至私有云的同步消息,包括:
4.根据权利要求1所述的方法,其特征在于,所述获取所述开关状态字段对应的开关状态字段值之后,所述方法还包括:
5.根据权利要求1所述的方法,其特征在于,所述获取所述开关状态字段对应的开关状态字段值之后,所述方法还包括:
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
7.根据权利要求1所述的方法,其特征在于,所述通知私有云消费者消费所述消息集群中的所述同步消息,将公有云中增量数据同步至私有云,包括:
8.一种混合云数据同步装置,其特征在于,所述装置包括:
9.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
10.一种存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-7中任一所述的方法。