CN112632032A - 一种数据迁移方法、装置、存储介质及终端设备 - Google Patents

一种数据迁移方法、装置、存储介质及终端设备 Download PDF

Info

Publication number
CN112632032A
CN112632032A CN202011473049.0A CN202011473049A CN112632032A CN 112632032 A CN112632032 A CN 112632032A CN 202011473049 A CN202011473049 A CN 202011473049A CN 112632032 A CN112632032 A CN 112632032A
Authority
CN
China
Prior art keywords
service
original
data
micro
migration
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
Application number
CN202011473049.0A
Other languages
English (en)
Other versions
CN112632032B (zh
Inventor
丁磊
徐震
张运超
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Human Horizons Shanghai Internet Technology Co Ltd
Original Assignee
Human Horizons Shanghai Internet Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Human Horizons Shanghai Internet Technology Co Ltd filed Critical Human Horizons Shanghai Internet Technology Co Ltd
Priority to CN202011473049.0A priority Critical patent/CN112632032B/zh
Publication of CN112632032A publication Critical patent/CN112632032A/zh
Application granted granted Critical
Publication of CN112632032B publication Critical patent/CN112632032B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/214Database migration support
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating

Abstract

本发明公开了一种数据迁移方法、装置、存储介质及终端设备,在应用更新过程中,通过服务网关接口调用原微服务功能,采用异步通知的方式将原微服务数据库中的原业务数据推送至异步处理队列;通过服务网关接口调用新微服务功能,从异步处理队列中读取数据,将读取到的数据写入新微服务数据库中,并对当前写入的数据所对应的原业务数据进行迁移标识;根据时间周期判断所有原业务数据是否迁移完成;若否,则继续对未标识的原业务数据进行数据迁移;若是,则控制服务网关接口禁止调用原微服务功能,切换至调用新微服务功能。本发明的技术方案能够基于微服务架构完成对应用的不中断迭代更新以及数据的无感知迁移,从而提高用户的应用使用体验。

Description

一种数据迁移方法、装置、存储介质及终端设备
技术领域
本发明涉及数据处理技术领域,尤其涉及一种数据迁移方法、装置、计算机可读存储介质及终端设备。
背景技术
伴随着互联网应用需求的爆炸性增长,以及微服务架构的全面推广,为了应对越来越频繁的应用发布迭代更新,在更新中对各个终端不影响用户使用体验的灰度发布的场景需求变的越来越普遍。
但是,现有技术提供的方法一般需要使终端停机以完成应用的功能迭代更新和大批量的数据迁移,而大批量的数据迁移耗时较长,终端停机维护会导致应用无法使用,用户体验较差。
发明内容
本发明实施例所要解决的技术问题在于,提供一种数据迁移方法、装置、计算机可读存储介质及终端设备,能够基于微服务架构完成对应用的不中断迭代更新以及数据的无感知迁移,从而提高用户的应用使用体验。
为了解决上述技术问题,本发明实施例提供了一种数据迁移方法,包括:
在应用更新过程中,通过预先设计的服务网关接口调用原微服务功能,采用异步通知的方式将原微服务数据库中的原业务数据推送至异步处理队列,所述原微服务数据库中包含应用更新前的所有原业务数据;
通过所述服务网关接口调用新微服务功能,从所述异步处理队列中读取数据,将读取到的数据写入新微服务数据库中,并对当前写入所述新微服务数据库中的数据所对应的原业务数据进行迁移标识,所述新微服务数据库中包含应用更新后的所有新业务数据;
根据预设的时间周期判断所述所有原业务数据是否迁移完成;
若否,则继续对所述原微服务数据库中的未标识的原业务数据进行数据迁移,直至所述所有原业务数据迁移完成为止;
若是,则控制所述服务网关接口禁止调用原微服务功能,切换至调用新微服务功能。
进一步地,所述方法还包括:
在所述所有原业务数据迁移完成之前,当接收到外围应用请求时,通过所述服务网关接口调用原微服务功能,对接收到的外围应用请求进行响应;
在所述所有原业务数据迁移完成之后,当接收到外围应用请求时,通过所述服务网关接口调用新微服务功能,对接收到的外围应用请求进行响应。
进一步地,所述所有原业务数据为应用更新前的所有原功能对应的业务处理数据;所述所有新业务数据为应用更新后的所有新功能对应的业务处理数据。
进一步地,在调用所述服务网关接口时,所述方法还包括:
通过接口字段的设置控制所述服务网关接口调用原微服务功能或新微服务功能。
进一步地,所述通过接口字段的设置控制所述服务网关接口调用原微服务功能或新微服务功能,具体包括:
当所述接口字段中未设置版本标志字段时,控制所述服务网关接口调用原微服务功能;
当所述接口字段中设置版本标志字段时,控制所述服务网关接口调用新微服务功能。
进一步地,所述根据预设的时间周期判断所述所有原业务数据是否迁移完成,具体包括:
根据所述时间周期判断所述所有原业务数据是否均存在迁移标识;
若否,则判定所述所有原业务数据迁移未完成;
若是,则判定所述所有原业务数据迁移完成。
进一步地,所述方法还包括:
当任一原业务数据发生变化时,判断所述原业务数据是否已经完成迁移;
若是,则先对所述新微服务数据库中存储的所述原业务数据进行相应更新,再对所述原微服务数据库中存储的所述原业务数据进行相应更新。
为了解决上述技术问题,本发明实施例还提供了一种数据迁移装置,包括:
原微服务调用模块,用于在应用更新过程中,通过预先设计的服务网关接口调用原微服务功能,采用异步通知的方式将原微服务数据库中的原业务数据推送至异步处理队列,所述原微服务数据库中包含应用更新前的所有原业务数据;
新微服务调用模块,用于通过所述服务网关接口调用新微服务功能,从所述异步处理队列中读取数据,将读取到的数据写入新微服务数据库中,并对当前写入所述新微服务数据库中的数据所对应的原业务数据进行迁移标识,所述新微服务数据库中包含应用更新后的所有新业务数据;
数据迁移完成判断模块,用于根据预设的时间周期判断所述所有原业务数据是否迁移完成;
第一判断结果处理模块,用于若否,则继续对所述原微服务数据库中的未标识的原业务数据进行数据迁移,直至所述所有原业务数据迁移完成为止;
第二判断结果处理模块,用于若是,则控制所述服务网关接口禁止调用原微服务功能,切换至调用新微服务功能。
本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质包括存储的计算机程序;其中,所述计算机程序在运行时控制所述计算机可读存储介质所在的设备执行上述任一项所述的数据迁移方法。
本发明实施例还提供了一种终端设备,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器在执行所述计算机程序时实现上述任一项所述的数据迁移方法。
与现有技术相比,本发明实施例提供了一种数据迁移方法、装置、计算机可读存储介质及终端设备,在应用更新过程中,通过预先设计的服务网关接口调用原微服务功能,采用异步通知的方式将原微服务数据库中的原业务数据推送至异步处理队列;通过所述服务网关接口调用新微服务功能,从所述异步处理队列中读取数据,将读取到的数据写入新微服务数据库中,并对当前写入所述新微服务数据库中的数据所对应的原业务数据进行迁移标识;根据预设的时间周期判断所述所有原业务数据是否迁移完成;若否,则继续对所述原微服务数据库中的未标识的原业务数据进行数据迁移,直至所述所有原业务数据迁移完成为止;若是,则控制所述服务网关接口禁止调用原微服务功能,切换至调用新微服务功能;从而能够基于微服务架构完成对应用的不中断迭代更新以及数据的无感知迁移,提高用户的应用使用体验。
附图说明
图1是本发明提供的一种数据迁移方法的一个优选实施例的流程图;
图2是本发明提供的一种数据迁移装置的一个优选实施例的结构框图;
图3是本发明提供的一种终端设备的一个优选实施例的结构框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本技术领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供了一种数据迁移方法,参见图1所示,是本发明提供的一种数据迁移方法的一个优选实施例的流程图,所述方法包括步骤S11至步骤S15:
步骤S11、在应用更新过程中,通过预先设计的服务网关接口调用原微服务功能,采用异步通知的方式将原微服务数据库中的原业务数据推送至异步处理队列,所述原微服务数据库中包含应用更新前的所有原业务数据;
步骤S12、通过所述服务网关接口调用新微服务功能,从所述异步处理队列中读取数据,将读取到的数据写入新微服务数据库中,并对当前写入所述新微服务数据库中的数据所对应的原业务数据进行迁移标识,所述新微服务数据库中包含应用更新后的所有新业务数据;
步骤S13、根据预设的时间周期判断所述所有原业务数据是否迁移完成;
步骤S14、若否,则继续对所述原微服务数据库中的未标识的原业务数据进行数据迁移,直至所述所有原业务数据迁移完成为止;
步骤S15、若是,则控制所述服务网关接口禁止调用原微服务功能,切换至调用新微服务功能。
需要说明的是,本发明实施例可以适用于基于微服务架构的应用灰度发布更新场景,微服务集群中的各个微服务均通过统一的服务网关接口(例如API接口)面向不同的应用(例如APP、小程序和H5等应用),为了达到任意一个应用灰度无感发布的效果,在设计应用的新增功能时需要充分考虑与应用的原有功能的融合,只增不减,以确保应用的原有功能的完整性以及没有升级的外围系统不受影响,因此,通过对接口层面的改造,预先设计了可以完全向下兼容(即兼容现有的所有版本)的服务网关接口,应用的不同版本均使用该服务网关接口进行相应的业务无缝切换。
具体的,在实际的应用更新过程中,首先通过预先设计的服务网关接口调用原微服务功能(即应用更新前的原版本所对应的微服务功能),通过原微服务功能开始启动原微服务数据库中的原业务数据的导出迁移功能,其中,原微服务数据库中包含了应用更新前的原版本所对应的所有原业务数据,考虑到此时微服务可能同时不中断的处理实时的外围应用请求,采用异步通知的方式将原微服务数据库中的原业务数据推送至异步处理队列;接着通过预先设计的服务网关接口调用新微服务功能(即应用更新后的新版本所对应的微服务功能),通过新微服务功能从上述异步处理队列中依次读取数据,并将读取到的数据(即原业务数据)依次写入新微服务数据库中,此外,还对当前写入新微服务数据库中的数据所对应的原微服务数据库中的原业务数据进行迁移标识,使得原微服务数据库中的已经完成迁移的原业务数据具有迁移标识,避免后续对具有迁移标识的原业务数据重复进行数据推送迁移,其中,新微服务数据库中包含了应用更新后的新版本所对应的所有新业务数据;经过预先设置的时间间隔之后,需要检查所有原业务数据的迁移进度,以根据预先设置的时间周期判断原微服务数据库中的所有原业务数据是否迁移完成,当判定原微服务数据库中的所有原业务数据未迁移完成时,继续对原微服务数据库中的不具有迁移标识的原业务数据进行数据迁移,直至原微服务数据库中的所有原业务数据迁移完成为止;当判定原微服务数据库中的所有原业务数据迁移完成时,控制服务网关接口禁止调用原微服务功能,以停用应用的更新前的原版本所对应的微服务功能,并将服务网关接口切换至调用新微服务功能,以全面切换至应用的更新后的新版本所对应的微服务的处理调用。
优选地,所述所有原业务数据为应用更新前的所有原功能对应的业务处理数据;所述所有新业务数据为应用更新后的所有新功能对应的业务处理数据。
可以理解的,原微服务数据库中所包含的应用更新前的原版本所对应的所有原业务数据实际为应用更新前的所有原有功能对应的业务处理数据,新微服务数据库中所包含的应用更新后的新版本所对应的所有新业务数据实际为应用更新后的所有新增功能对应的业务处理数据,相应的,在新微服务数据库中写入了原业务数据后,新微服务数据库中既包含新业务数据,又包含原业务数据,在后续通过服务网关接口调用新微服务功能时,即可通过读取新微服务数据库中的相应的新业务数据和新业务数据,对应实现应用更新前的原有功能和应用更新后的新增功能。
本发明实施例所提供的一种数据迁移方法,在应用更新过程中,能够基于微服务架构通过原微服务和新微服务的切换调用,完成对应用的不中断迭代更新以及数据的无感知迁移,确保在某些特殊要求场景下的应用使用体验的不间断,有效避免了因应用版本更新升级且需要完成大批量的数据迁移而导致的长时间的应用后台服务功能不可用的情况发生,从而大大提高了用户的应用使用体验。
在另一个优选实施例中,所述方法还包括:
在所述所有原业务数据迁移完成之前,当接收到外围应用请求时,通过所述服务网关接口调用原微服务功能,对接收到的外围应用请求进行响应;
在所述所有原业务数据迁移完成之后,当接收到外围应用请求时,通过所述服务网关接口调用新微服务功能,对接收到的外围应用请求进行响应。
具体的,结合上述实施例,在实际的应用更新过程中可能仍然会接收到不同的外围应用请求,如果在原微服务数据库中的所有原业务数据迁移完成之前,接收到外围应用请求,则通过预先设计的服务网关接口调用原微服务功能,以通过原微服务功能对接收到的外围应用请求进行响应,即仍然使用应用更新前的原版本所对应的原有功能;如果在原微服务数据库中的所有原业务数据迁移完成之后,接收到外围应用请求,则通过预先设计的服务网关接口调用新微服务功能,以通过新微服务功能对接收到的外围应用请求进行响应,即使用应用更新后的新版本所对应的原有功能和新增功能。
在又一个优选实施例中,在调用所述服务网关接口时,所述方法还包括:
通过接口字段的设置控制所述服务网关接口调用原微服务功能或新微服务功能。
作为上述方案的改进,所述通过接口字段的设置控制所述服务网关接口调用原微服务功能或新微服务功能,具体包括:
当所述接口字段中未设置版本标志字段时,控制所述服务网关接口调用原微服务功能;
当所述接口字段中设置版本标志字段时,控制所述服务网关接口调用新微服务功能。
具体的,结合上述实施例,在实际调用预先设计的服务网关接口以调用相应的微服务功能时,可以通过服务网关接口所对应的接口字段的设置控制服务网关接口相应调用原微服务功能或新微服务功能,例如,当服务网关接口所对应的接口字段中未设置版本标志字段时,意味着调用应用更新后的新版本所对应的相关功能,则控制服务网关接口调用原微服务功能;当服务网关接口所对应的接口字段中设置了版本标志字段时,意味着调用应用更新前的原版本所对应的相关功能,则控制服务网关接口调用新微服务功能。
需要说明的是,服务网关接口所对应的接口字段中至少包括原接口定义字段(对应应用更新前的原版本的所有原有功能),原接口定义字段中包括至少一个业务字段(对应应用更新前的原版本的一个原有功能,不同的原有功能对应不同的业务字段),在应用更新后,服务网关接口所对应的接口字段中还包括新版本扩展字段(对应应用更新后的新版本的所有新增功能),新版本扩展字段中包括一个版本标志字段和至少一个新版本业务字段(对应应用更新后的新版本的一个新增功能,不同的新增功能对应不同的新版本业务字段),通过对原接口定义字段中的某一个业务字段的参数调整,可以相应调用应用更新前的原版本的某一个原有功能,同理,通过对新版本扩展字段中的某一个新版本业务字段的参数调整,可以相应调用应用更新后的新版本的某一个新增功能。
在又一个优选实施例中,所述根据预设的时间周期判断所述所有原业务数据是否迁移完成,具体包括:
根据所述时间周期判断所述所有原业务数据是否均存在迁移标识;
若否,则判定所述所有原业务数据迁移未完成;
若是,则判定所述所有原业务数据迁移完成。
具体的,结合上述实施例,由于已经完成迁移的原业务数据被标注了迁移标识,因此,在根据预先设置的时间周期判断原微服务数据库中的所有原业务数据是否迁移完成时,可以根据原微服务数据库中的所有原业务数据是否均具有迁移标识进行判断,相应的,当原微服务数据库中的所有原业务数据中至少有一个原业务数据不具有迁移标识时(即原微服务数据库中的所有原业务数据不是都具有迁移标识),判定原微服务数据库中的所有原业务数据未迁移完成,当原微服务数据库中的所有原业务数据均具有迁移标识时,判定原微服务数据库中的所有原业务数据均迁移完成。
在又一个优选实施例中,所述方法还包括:
当任一原业务数据发生变化时,判断所述原业务数据是否已经完成迁移;
若是,则先对所述新微服务数据库中存储的所述原业务数据进行相应更新,再对所述原微服务数据库中存储的所述原业务数据进行相应更新。
具体的,结合上述实施例,在数据迁移过程中,当任意一个原业务数据发生变化时,判断该原业务数据是否已经完成迁移,即判断新微服务数据库中是否写入了该业务数据,若是,则先对新微服务数据库中存储的该原业务数据进行相应更新,再对原微服务数据库中存储的该原业务数据进行相应更新。
本发明实施例还提供了一种数据迁移装置,参见图2所示,是本发明提供的一种数据迁移装置的一个优选实施例的结构框图,所述装置包括:
原微服务调用模块11,用于在应用更新过程中,通过预先设计的服务网关接口调用原微服务功能,采用异步通知的方式将原微服务数据库中的原业务数据推送至异步处理队列,所述原微服务数据库中包含应用更新前的所有原业务数据;
新微服务调用模块12,用于通过所述服务网关接口调用新微服务功能,从所述异步处理队列中读取数据,将读取到的数据写入新微服务数据库中,并对当前写入所述新微服务数据库中的数据所对应的原业务数据进行迁移标识,所述新微服务数据库中包含应用更新后的所有新业务数据;
数据迁移完成判断模块13,用于根据预设的时间周期判断所述所有原业务数据是否迁移完成;
第一判断结果处理模块14,用于若否,则继续对所述原微服务数据库中的未标识的原业务数据进行数据迁移,直至所述所有原业务数据迁移完成为止;
第二判断结果处理模块15,用于若是,则控制所述服务网关接口禁止调用原微服务功能,切换至调用新微服务功能。
优选地,所述装置还包括:
第一应用请求响应模块,用于在所述所有原业务数据迁移完成之前,当接收到外围应用请求时,通过所述服务网关接口调用原微服务功能,对接收到的外围应用请求进行响应;
第二应用请求响应模块,用于在所述所有原业务数据迁移完成之后,当接收到外围应用请求时,通过所述服务网关接口调用新微服务功能,对接收到的外围应用请求进行响应。
优选地,所述所有原业务数据为应用更新前的所有原功能对应的业务处理数据;所述所有新业务数据为应用更新后的所有新功能对应的业务处理数据。
优选地,所述装置还包括:
服务网关接口调用模块,用于通过接口字段的设置控制所述服务网关接口调用原微服务功能或新微服务功能。
优选地,所述服务网关接口调用模块具体包括:
原微服务功能调用单元,用于当所述接口字段中未设置版本标志字段时,控制所述服务网关接口调用原微服务功能;
新微服务功能调用单元,用于当所述接口字段中设置版本标志字段时,控制所述服务网关接口调用新微服务功能。
优选地,所述数据迁移完成判断模块13具体包括:
迁移标识判断单元,用于根据所述时间周期判断所述所有原业务数据是否均存在迁移标识;
第一判断单元,用于若否,则判定所述所有原业务数据迁移未完成;
第二判断单元,用于若是,则判定所述所有原业务数据迁移完成。
优选地,所述装置还包括业务数据更新模块,所述业务数据更新模块用于:
当任一原业务数据发生变化时,判断所述原业务数据是否已经完成迁移;
若是,则先对所述新微服务数据库中存储的所述原业务数据进行相应更新,再对所述原微服务数据库中存储的所述原业务数据进行相应更新。
需要说明的是,本发明实施例所提供的一种数据迁移装置,能够实现上述任一实施例所述的数据迁移方法的所有流程,装置中的各个模块、单元的作用以及实现的技术效果分别与上述实施例所述的数据迁移方法的作用以及实现的技术效果对应相同,这里不再赘述。
本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质包括存储的计算机程序;其中,所述计算机程序在运行时控制所述计算机可读存储介质所在的设备执行上述任一实施例所述的数据迁移方法。
本发明实施例还提供了一种终端设备,参见图3所示,是本发明提供的一种终端设备的一个优选实施例的结构框图,所述终端设备包括处理器10、存储器20以及存储在所述存储器20中且被配置为由所述处理器10执行的计算机程序,所述处理器10在执行所述计算机程序时实现上述任一实施例所述的数据迁移方法。
优选地,所述计算机程序可以被分割成一个或多个模块/单元(如计算机程序1、计算机程序2、······),所述一个或者多个模块/单元被存储在所述存储器20中,并由所述处理器10执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序在所述终端设备中的执行过程。
所述处理器10可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,通用处理器可以是微处理器,或者所述处理器10也可以是任何常规的处理器,所述处理器10是所述终端设备的控制中心,利用各种接口和线路连接所述终端设备的各个部分。
所述存储器20主要包括程序存储区和数据存储区,其中,程序存储区可存储操作系统、至少一个功能所需的应用程序等,数据存储区可存储相关数据等。此外,所述存储器20可以是高速随机存取存储器,还可以是非易失性存储器,例如插接式硬盘,智能存储卡(Smart Media Card,SMC)、安全数字(Secure Digital,SD)卡和闪存卡(Flash Card)等,或所述存储器20也可以是其他易失性固态存储器件。
需要说明的是,上述终端设备可包括,但不仅限于,处理器、存储器,本领域技术人员可以理解,图3结构框图仅仅是上述终端设备的示例,并不构成对终端设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件。
综上,本发明实施例所提供的一种数据迁移方法、装置、计算机可读存储介质及终端设备,在应用更新过程中,能够基于微服务架构通过原微服务和新微服务的切换调用,完成对应用的不中断迭代更新以及数据的无感知迁移,确保在某些特殊要求场景下的应用使用体验的不间断,有效避免了因应用版本更新升级且需要完成大批量的数据迁移而导致的长时间的应用后台服务功能不可用的情况发生,从而大大提高了用户的应用使用体验。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。

Claims (10)

1.一种数据迁移方法,其特征在于,包括:
在应用更新过程中,通过预先设计的服务网关接口调用原微服务功能,采用异步通知的方式将原微服务数据库中的原业务数据推送至异步处理队列,所述原微服务数据库中包含应用更新前的所有原业务数据;
通过所述服务网关接口调用新微服务功能,从所述异步处理队列中读取数据,将读取到的数据写入新微服务数据库中,并对当前写入所述新微服务数据库中的数据所对应的原业务数据进行迁移标识,所述新微服务数据库中包含应用更新后的所有新业务数据;
根据预设的时间周期判断所述所有原业务数据是否迁移完成;
若否,则继续对所述原微服务数据库中的未标识的原业务数据进行数据迁移,直至所述所有原业务数据迁移完成为止;
若是,则控制所述服务网关接口禁止调用原微服务功能,切换至调用新微服务功能。
2.如权利要求1所述的数据迁移方法,其特征在于,所述方法还包括:
在所述所有原业务数据迁移完成之前,当接收到外围应用请求时,通过所述服务网关接口调用原微服务功能,对接收到的外围应用请求进行响应;
在所述所有原业务数据迁移完成之后,当接收到外围应用请求时,通过所述服务网关接口调用新微服务功能,对接收到的外围应用请求进行响应。
3.如权利要求1所述的数据迁移方法,其特征在于,所述所有原业务数据为应用更新前的所有原功能对应的业务处理数据;所述所有新业务数据为应用更新后的所有新功能对应的业务处理数据。
4.如权利要求1所述的数据迁移方法,其特征在于,在调用所述服务网关接口时,所述方法还包括:
通过接口字段的设置控制所述服务网关接口调用原微服务功能或新微服务功能。
5.如权利要求4所述的数据迁移方法,其特征在于,所述通过接口字段的设置控制所述服务网关接口调用原微服务功能或新微服务功能,具体包括:
当所述接口字段中未设置版本标志字段时,控制所述服务网关接口调用原微服务功能;
当所述接口字段中设置版本标志字段时,控制所述服务网关接口调用新微服务功能。
6.如权利要求1所述的数据迁移方法,其特征在于,所述根据预设的时间周期判断所述所有原业务数据是否迁移完成,具体包括:
根据所述时间周期判断所述所有原业务数据是否均存在迁移标识;
若否,则判定所述所有原业务数据迁移未完成;
若是,则判定所述所有原业务数据迁移完成。
7.如权利要求1~6任一项所述的数据迁移方法,其特征在于,所述方法还包括:
当任一原业务数据发生变化时,判断所述原业务数据是否已经完成迁移;
若是,则先对所述新微服务数据库中存储的所述原业务数据进行相应更新,再对所述原微服务数据库中存储的所述原业务数据进行相应更新。
8.一种数据迁移装置,其特征在于,包括:
原微服务调用模块,用于在应用更新过程中,通过预先设计的服务网关接口调用原微服务功能,采用异步通知的方式将原微服务数据库中的原业务数据推送至异步处理队列,所述原微服务数据库中包含应用更新前的所有原业务数据;
新微服务调用模块,用于通过所述服务网关接口调用新微服务功能,从所述异步处理队列中读取数据,将读取到的数据写入新微服务数据库中,并对当前写入所述新微服务数据库中的数据所对应的原业务数据进行迁移标识,所述新微服务数据库中包含应用更新后的所有新业务数据;
数据迁移完成判断模块,用于根据预设的时间周期判断所述所有原业务数据是否迁移完成;
第一判断结果处理模块,用于若否,则继续对所述原微服务数据库中的未标识的原业务数据进行数据迁移,直至所述所有原业务数据迁移完成为止;
第二判断结果处理模块,用于若是,则控制所述服务网关接口禁止调用原微服务功能,切换至调用新微服务功能。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括存储的计算机程序;其中,所述计算机程序在运行时控制所述计算机可读存储介质所在的设备执行如权利要求1~7任一项所述的数据迁移方法。
10.一种终端设备,其特征在于,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器在执行所述计算机程序时实现如权利要求1~7任一项所述的数据迁移方法。
CN202011473049.0A 2020-12-18 2020-12-18 一种数据迁移方法、装置、存储介质及终端设备 Active CN112632032B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011473049.0A CN112632032B (zh) 2020-12-18 2020-12-18 一种数据迁移方法、装置、存储介质及终端设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011473049.0A CN112632032B (zh) 2020-12-18 2020-12-18 一种数据迁移方法、装置、存储介质及终端设备

Publications (2)

Publication Number Publication Date
CN112632032A true CN112632032A (zh) 2021-04-09
CN112632032B CN112632032B (zh) 2022-12-27

Family

ID=75313741

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011473049.0A Active CN112632032B (zh) 2020-12-18 2020-12-18 一种数据迁移方法、装置、存储介质及终端设备

Country Status (1)

Country Link
CN (1) CN112632032B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113037875A (zh) * 2021-05-24 2021-06-25 武汉众邦银行股份有限公司 一种分布式实时业务系统中的异步网关的实现方法

Citations (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103729204A (zh) * 2012-10-16 2014-04-16 阿里巴巴集团控股有限公司 一种网络平台中应用更新的数据在线迁移方法和装置
US20160164722A1 (en) * 2014-12-04 2016-06-09 Microsoft Technology Licensing, Llc Zero-downtime, reversible, client-driven service migration
CN107948284A (zh) * 2017-11-24 2018-04-20 泰康保险集团股份有限公司 一种基于微服务架构的服务下线方法、设备和系统
CN108256002A (zh) * 2017-12-31 2018-07-06 广东欧珀移动通信有限公司 跨机房数据同步方法、装置、系统以及服务器
CN108280148A (zh) * 2018-01-02 2018-07-13 中国民生银行股份有限公司 一种数据迁移方法和数据迁移服务器
CN109325016A (zh) * 2018-09-12 2019-02-12 杭州朗和科技有限公司 数据迁移方法、装置、介质及电子设备
CN109710524A (zh) * 2018-12-19 2019-05-03 上海华兴数字科技有限公司 一种自动测试方法、系统和计算机存储介质
CN109739665A (zh) * 2019-01-04 2019-05-10 上海银赛计算机科技有限公司 接口管理方法、装置、服务器及存储介质
CN109814917A (zh) * 2019-01-16 2019-05-28 中国平安财产保险股份有限公司 微服务发布方法、装置、计算机设备和存储介质
CN110297813A (zh) * 2019-05-22 2019-10-01 平安银行股份有限公司 数据迁移方法、装置、计算机设备及存储介质
CN110362582A (zh) * 2018-04-03 2019-10-22 北京京东尚科信息技术有限公司 一种实现零停机升级的方法和装置
CN110399356A (zh) * 2019-06-14 2019-11-01 阿里巴巴集团控股有限公司 一种在线数据迁移方法、装置、计算设备及存储介质
WO2020000725A1 (zh) * 2018-06-29 2020-01-02 平安科技(深圳)有限公司 电子装置、数据迁移的方法及存储介质
CN110673941A (zh) * 2019-09-27 2020-01-10 掌阅科技股份有限公司 多机房中微服务的迁移方法、电子设备及存储介质
CN111221800A (zh) * 2019-12-19 2020-06-02 中国平安人寿保险股份有限公司 数据库迁移方法、装置、电子设备及存储介质
CN111651182A (zh) * 2020-06-17 2020-09-11 深圳市钱海网络技术有限公司 一种用于微服务系统的自动打包构建方法及装置
CN111694638A (zh) * 2020-05-28 2020-09-22 中国平安人寿保险股份有限公司 规则包加载方法、规则包执行方法及终端设备
CN112000348A (zh) * 2020-07-28 2020-11-27 金蝶医疗软件科技有限公司 服务灰度发布的控制方法、装置、计算机设备
CN112035432A (zh) * 2020-07-22 2020-12-04 大箴(杭州)科技有限公司 数据的置换迁移方法、装置计算机设备
CN112073320A (zh) * 2020-11-12 2020-12-11 深圳壹账通智能科技有限公司 基于云网关的api灰度发布方法、装置及计算机设备
CN112084047A (zh) * 2020-09-14 2020-12-15 浪潮云信息技术股份公司 一种基于异步线程池的消息发送实现方法

Patent Citations (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103729204A (zh) * 2012-10-16 2014-04-16 阿里巴巴集团控股有限公司 一种网络平台中应用更新的数据在线迁移方法和装置
US20160164722A1 (en) * 2014-12-04 2016-06-09 Microsoft Technology Licensing, Llc Zero-downtime, reversible, client-driven service migration
CN107948284A (zh) * 2017-11-24 2018-04-20 泰康保险集团股份有限公司 一种基于微服务架构的服务下线方法、设备和系统
CN108256002A (zh) * 2017-12-31 2018-07-06 广东欧珀移动通信有限公司 跨机房数据同步方法、装置、系统以及服务器
CN108280148A (zh) * 2018-01-02 2018-07-13 中国民生银行股份有限公司 一种数据迁移方法和数据迁移服务器
CN110362582A (zh) * 2018-04-03 2019-10-22 北京京东尚科信息技术有限公司 一种实现零停机升级的方法和装置
WO2020000725A1 (zh) * 2018-06-29 2020-01-02 平安科技(深圳)有限公司 电子装置、数据迁移的方法及存储介质
CN109325016A (zh) * 2018-09-12 2019-02-12 杭州朗和科技有限公司 数据迁移方法、装置、介质及电子设备
CN109710524A (zh) * 2018-12-19 2019-05-03 上海华兴数字科技有限公司 一种自动测试方法、系统和计算机存储介质
CN109739665A (zh) * 2019-01-04 2019-05-10 上海银赛计算机科技有限公司 接口管理方法、装置、服务器及存储介质
CN109814917A (zh) * 2019-01-16 2019-05-28 中国平安财产保险股份有限公司 微服务发布方法、装置、计算机设备和存储介质
CN110297813A (zh) * 2019-05-22 2019-10-01 平安银行股份有限公司 数据迁移方法、装置、计算机设备及存储介质
CN110399356A (zh) * 2019-06-14 2019-11-01 阿里巴巴集团控股有限公司 一种在线数据迁移方法、装置、计算设备及存储介质
CN110673941A (zh) * 2019-09-27 2020-01-10 掌阅科技股份有限公司 多机房中微服务的迁移方法、电子设备及存储介质
CN111221800A (zh) * 2019-12-19 2020-06-02 中国平安人寿保险股份有限公司 数据库迁移方法、装置、电子设备及存储介质
CN111694638A (zh) * 2020-05-28 2020-09-22 中国平安人寿保险股份有限公司 规则包加载方法、规则包执行方法及终端设备
CN111651182A (zh) * 2020-06-17 2020-09-11 深圳市钱海网络技术有限公司 一种用于微服务系统的自动打包构建方法及装置
CN112035432A (zh) * 2020-07-22 2020-12-04 大箴(杭州)科技有限公司 数据的置换迁移方法、装置计算机设备
CN112000348A (zh) * 2020-07-28 2020-11-27 金蝶医疗软件科技有限公司 服务灰度发布的控制方法、装置、计算机设备
CN112084047A (zh) * 2020-09-14 2020-12-15 浪潮云信息技术股份公司 一种基于异步线程池的消息发送实现方法
CN112073320A (zh) * 2020-11-12 2020-12-11 深圳壹账通智能科技有限公司 基于云网关的api灰度发布方法、装置及计算机设备

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
裴宏祥等: "基于微服务架构的系统设计与开发", 《中国科技信息》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113037875A (zh) * 2021-05-24 2021-06-25 武汉众邦银行股份有限公司 一种分布式实时业务系统中的异步网关的实现方法
CN113037875B (zh) * 2021-05-24 2021-07-27 武汉众邦银行股份有限公司 一种分布式实时业务系统中的异步网关的实现方法

Also Published As

Publication number Publication date
CN112632032B (zh) 2022-12-27

Similar Documents

Publication Publication Date Title
CN107832100B (zh) 一种apk插件的加载方法及其终端
CN107402835B (zh) 应用程序的异常处理方法、装置及存储介质和移动终端
US20200342093A1 (en) Application program starting method and apparatus and computer readable storage medium
WO2020093976A1 (zh) 一种资源变更的方法及装置、设备、存储介质
CN110955448A (zh) 智能合约分离方法、合约处理方法、装置、设备及介质
CN104104705B (zh) 分布式存储系统的接入方法和设备
CN106603125B (zh) 一种与蓝牙设备进行数据交互的方法及装置
CN112632032B (zh) 一种数据迁移方法、装置、存储介质及终端设备
US8117432B2 (en) Method for controlling boot sequence of server
CN111400091B (zh) 恢复出厂设置方法、恢复出厂设置装置及移动终端
CN112966094A (zh) 一种交易数据的处理方法、装置以及系统
CN110753040B (zh) 一种请求处理的方法及装置
CN116049000A (zh) 环境参数配置方法、装置、设备、存储介质及产品
CN115185745A (zh) 数据处理方法、系统、电子设备及计算机可读存储介质
CN114816482A (zh) 块存储服务的升级方法、装置、计算机设备及存储介质
CN110929249B (zh) 自动化测试的屏幕录制方法、装置、设备和存储介质
CN115437551A (zh) 数据克隆的方法、设备、存储介质及计算机程序产品
CN110795389A (zh) 基于存储快照的拷贝方法、用户设备、存储介质及装置
CN107209882B (zh) 对于处在管理之下的设备的多阶段撤销注册
CN108304200B (zh) 一种驱动程序升级的方法、装置以及电子设备
CN114528147B (zh) 双操作系统中指纹删除的方法和装置
CN116186046B (zh) 设备数据的修改方法、装置、计算机设备及存储介质
CN111432401B (zh) 用于移动终端的开启/关闭漫游数据网络的方法及装置
WO2021254280A1 (zh) 磁盘挂载方法、装置、存储介质以及电子装置
CN107247641B (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