一种业务处理方法以及相关装置与流程

摘要: 本技术涉及云计算领域,尤其涉及一种业务处理方法以及相关装置。背景技术:1、单元化架构包括多个独立运行的单元,每个单元是一个业务自包含的计算集群。2、目前有一种应...
一种业务处理方法以及相关装置与流程

本技术涉及云计算领域,尤其涉及一种业务处理方法以及相关装置。

背景技术:

1、单元化架构包括多个独立运行的单元,每个单元是一个业务自包含的计算集群。

2、目前有一种应用于单元化架构系统的业务处理方法大致如下:从源单元选择要迁移的用户数据之后,向源单元发送迁移指令,源单元根据迁移指令将用户数据迁移到目标单元,直至用户数据全部迁移到目标单元,然后目标单元向用户提供服务。

3、在实际应用中,当源单元在数据迁移时段处理用户业务时,当前业务数据可能没有迁移成功,导致迁移数据之后目标单元提供的业务数据出错。

技术实现思路

1、本技术提供一种业务处理方法,用同步时延和校验结果作为停写触发条件,在迁移数据基本同步和迁移数据正确的情况下进行短暂停写,然后在数据一致的情况下目标单元切换数据库路由规则,当目标单元再收到迁移用户的业务请求之后,目标单元使用本地数据库向迁移用户提供服务,这样既能够保障业务的高可用性,也能够保障迁移数据的一致性。本技术还提供能够实现上述方法的业务迁移平台、计算设备集群、计算机可读存储介质以及计算机程序产品。

2、第一方面提供一种业务处理方法,该方法应用于提供云服务的业务迁移平台,该方法包括:当源单元向目标单元迁移用户的数据时,业务迁移平台向路由网关发送第一修改路由指令,使用户的业务请求路由至目标单元,而且业务迁移平台向目标单元发送增加指令,以指示目标单元增加第一数据库路由规则,使目标单元根据第一数据库路由规则访问源单元的数据库中与业务请求对应的目标用户数据,然后业务迁移平台获取第一同步时延和第一校验结果,当第一同步时延小于或等于第一同步时延阈值且第一校验结果指示在目标单元中用户在第一时刻已迁移的数据通过一致性校验时,业务迁移平台向目标单元发送停写指令,停写指令用于指示目标单元将第一数据库路由规则修改为第二数据库路由规则,使目标单元根据第二数据库路由规则停止向源单元的数据库写目标用户数据,在停写目标用户数据之后业务迁移平台获取第二同步时延和第二校验结果,当第二同步时延小于或等于第二同步时延阈值且第二校验结果指示在目标单元中用户在第二时刻已迁移的数据通过一致性校验时,业务迁移平台向目标单元发送修改指令,修改指令用于将第二数据库路由规则修改为第三数据库路由规则,使目标单元根据第三数据库路由规则访问目标单元的数据库中的目标用户数据。

3、其中,业务迁移平台连接路由网关、源单元和目标单元。第一修改路由指令用于指示路由网关将第一路由规则修改为第二路由规则,第一路由规则用于将用户的业务请求路由至源单元,第二路由规则用于将用户的业务请求路由至目标单元。第一同步时延为传输第一未同步数据量所需时间,第一未同步数据量是目标单元中用户在第一时刻已迁移的数据与源单元中用户的全部数据的差量。第一校验结果是在目标单元中对用户在第一时刻已迁移的数据进行一致性校验得到的结果。第二同步时延为传输第二未同步数据量所需时间,第二未同步数据量是在目标单元中用户在第二时刻已迁移的数据与源单元中用户的全部数据的差量。第二同步时延阈值可以是但不限于0。第一同步时延阈值、第二同步时延阈值、第一时刻、第二时刻以及停写时长可以根据实际情况进行设置,具体不作限定。第二校验结果是在目标单元中对用户在第二时刻已迁移的数据进行一致性校验得到的结果。

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、第九方面提供一种计算机程序产品,其包括指令;当指令被计算设备集群运行时,使得所述计算设备集群执行上述方面或上述方面中任意一种可能实现方式中的业务处理方法。