数据同步处理方法、装置、电子设备及可读存储介质制造方法及图纸

技术编号:34246248 阅读:14 留言:0更新日期:2022-07-24 10:26
本申请提供了一种数据同步处理方法、装置、电子设备及可读存储介质,应用于Redis客户端,该方法包括:在Redis客户端启动时,加载代理插件程序,以替换所述Redis客户端的默认Redis操作程序;在所述Redis客户端运行时,执行所述代理插件程序,以将所述Redis客户端的操作数据同步至所述Redis服务器的数据持久化队列中,其中,与所述Redis服务器通信连接的目标对象均可读取所述数据持久化队列中的数据。该方法能够极大提升数据同步的效率,同时,还可以适用于多活场景、双活场景等各种场景下的数据同步。数据同步。数据同步。

Data synchronization processing method, device, electronic device and readable storage medium

【技术实现步骤摘要】
数据同步处理方法、装置、电子设备及可读存储介质


[0001]本申请涉及计算机
,具体而言,涉及一种数据同步处理方法、装置、电子设备及可读存储介质。

技术介绍

[0002]远程字典服务(Remote Dictionary Server,简称Redis)是一种内存数据存储结构,能够用作数据库、缓存、消息代理以及流引擎。Redis能够提供丰富的数据结构,并基于此提供数据缓存、分布式锁、数据持久化、事务以及消息队列等功能。在一些场景下,例如以主备方式或多活方式部署的Redis集群中,需要完成Redis的数据同步。
[0003]现有技术中,可以通过日志文件进行数据同步。Redis服务器运行时可以写入Redis数据库(Redis DataBase,简称RDB)日志文件或追加文件(Append Only File,简称AOF)日志文件以实现数据备份,当需要进行数据恢复时,可以读取RDB日志文件或AOF日志文件以读取需要恢复的数据。
[0004]但是,现有技术的方法需要解析日志文件以获取数据,当日志文件中存储的数据较多时,会导致数据同步的效率较低。

技术实现思路

[0005]本申请的目的在于,针对上述现有技术中的不足,提供一种数据同步处理方法、装置、电子设备及可读存储介质,以解决现有技术中数据同步效率较低的问题。
[0006]为实现上述目的,本申请实施例采用的技术方案如下:第一方面,本申请实施例提供一种数据同步处理方法,应用于Redis客户端,所述Redis客户端与Redis服务器通信连接,Redis服务器上部署有数据持久化队列,所述方法包括:在Redis客户端启动时,加载代理插件程序,以替换所述Redis客户端的默认Redis操作程序;在所述Redis客户端运行时,执行所述代理插件程序,以将所述Redis客户端的操作数据同步至所述Redis服务器的所述数据持久化队列中,其中,与所述Redis服务器通信连接的目标对象均可读取所述数据持久化队列中的数据。
[0007]作为一种可能的实现方式,所述执行所述代理插件程序,以将所述Redis客户端的操作数据同步至所述Redis服务器的所述数据持久化队列中,包括:执行所述代理插件程序,同时向所述Redis服务器发起所述Redis客户端的Redis操作指令以及数据同步指令,以将所述Redis客户端的操作数据同步至所述Redis服务器的所述数据持久化队列中。
[0008]作为一种可能的实现方式,所述执行所述代理插件程序,同时向所述Redis服务器发起所述Redis操作指令以及数据同步指令,以将所述Redis客户端的操作数据同步至所述Redis服务器的所述数据持久化队列中,包括:
依次执行所述代理插件程序中的启动事务程序、Redis操作程序、数据推送程序以及提交事务程序,以将所述Redis客户端的操作数据同步至所述Redis服务器的所述数据持久化队列中;其中,所述Redis操作程序用于向所述Redis服务器发起所述Redis客户端的Redis操作指令,所述数据推送程序用于向所述Redis服务器发起所述数据同步指令。
[0009]作为一种可能的实现方式,所述加载代理插件程序之前,还包括:接收插件配置指令,所述插件配置指令中包括所述代理插件程序的标识;根据所述插件配置指令,通过代理命令将所述代理插件程序配置为所述Redis客户端的目标Redis操作程序。
[0010]作为一种可能的实现方式,所述根据所述插件配置指令,通过代理命令将所述代理插件程序配置为所述Redis客户端的目标Redis操作程序,包括:将所述代理插件程序的标识作为代理命令的参数,以将所述代理插件程序配置为所述Redis客户端的目标Redis操作程序;所述在Redis客户端启动时,加载代理插件程序,包括:在所述Redis客户端启动时,解析所述代理命令,以加载所述代理插件程序。
[0011]作为一种可能的实现方式,所述方法还包括:接收数据查看指令;根据所述数据查看指令,从所述Redis服务器的所述数据持久化队列中读取操作数据。
[0012]作为一种可能的实现方式,所述根据所述数据查看指令,从所述Redis服务器的所述数据持久化队列中读取操作数据,包括:根据所述数据查看指令,向所述Redis服务器发起数据读取指令,以从所述Redis服务器的所述数据持久化队列中读取操作数据。
[0013]第二方面,本申请实施例提供一种数据同步处理装置,应用于Redis客户端,所述Redis客户端与Redis服务器通信连接,Redis服务器上部署有数据持久化队列,所述装置包括:加载模块,用于在Redis客户端启动时,加载代理插件程序,以替换所述Redis客户端的默认Redis操作程序;执行模块,用于在所述Redis客户端运行时,执行所述代理插件程序,以将所述Redis客户端的操作数据同步至所述Redis服务器的所述数据持久化队列中,其中,与所述Redis服务器通信连接的目标对象均可读取所述数据持久化队列中的数据。
[0014]作为一种可能的实现方式,所述执行模块具体用于:执行所述代理插件程序,同时向所述Redis服务器发起所述Redis客户端的Redis操作指令以及数据同步指令,以将所述Redis客户端的操作数据同步至所述Redis服务器的所述数据持久化队列中。
[0015]作为一种可能的实现方式,所述执行模块具体用于:依次执行所述代理插件程序中的启动事务程序、Redis操作程序、数据推送程序以及提交事务程序,以将所述Redis客户端的操作数据同步至所述Redis服务器的所述数据持久化队列中;
其中,所述Redis操作程序用于向所述Redis服务器发起所述Redis客户端的Redis操作指令,所述数据推送程序用于向所述Redis服务器发起所述数据同步指令。
[0016]作为一种可能的实现方式,所述加载模块还用于:接收插件配置指令,所述插件配置指令中包括所述代理插件程序的标识;根据所述插件配置指令,通过代理命令将所述代理插件程序配置为所述Redis客户端的目标Redis操作程序。
[0017]作为一种可能的实现方式,所述加载模块具体用于:将所述代理插件程序的标识作为代理命令的参数,以将所述代理插件程序配置为所述Redis客户端的目标Redis操作程序;相应的,在所述Redis客户端启动时,解析所述代理命令,以加载所述代理插件程序。
[0018]作为一种可能的实现方式,所述装置还包括:读取模块,用于接收数据查看指令,并根据所述数据查看指令,从所述Redis服务器的所述数据持久化队列中读取操作数据。
[0019]作为一种可能的实现方式,所述读取模块具体用于:根据所述数据查看指令,向所述Redis服务器发起数据读取指令,以从所述Redis服务器的所述数据持久化队列中读取操作数据。
[0020]第三方面,本申请实施例提供一种电子设备,包括:处理器和存储器,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器执本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据同步处理方法,其特征在于,应用于远程字典服务客户端,所述远程字典服务客户端与远程字典服务服务器通信连接,远程字典服务服务器上部署有数据持久化队列,所述方法包括:在远程字典服务客户端启动时,加载代理插件程序,以替换所述远程字典服务客户端的默认远程字典服务操作程序;在所述远程字典服务客户端运行时,执行所述代理插件程序,以将所述远程字典服务客户端的操作数据同步至所述远程字典服务服务器的所述数据持久化队列中,其中,与所述远程字典服务服务器通信连接的目标对象均可读取所述数据持久化队列中的数据。2.根据权利要求1所述的方法,其特征在于,所述执行所述代理插件程序,以将所述远程字典服务客户端的操作数据同步至所述远程字典服务服务器的所述数据持久化队列中,包括:执行所述代理插件程序,同时向所述远程字典服务服务器发起所述远程字典服务客户端的远程字典服务操作指令以及数据同步指令,以将所述远程字典服务客户端的操作数据同步至所述远程字典服务服务器的所述数据持久化队列中。3.根据权利要求2所述的方法,其特征在于,所述执行所述代理插件程序,同时向所述远程字典服务服务器发起所述远程字典服务操作指令以及数据同步指令,以将所述远程字典服务客户端的操作数据同步至所述远程字典服务服务器的所述数据持久化队列中,包括:依次执行所述代理插件程序中的启动事务程序、远程字典服务操作程序、数据推送程序以及提交事务程序,以将所述远程字典服务客户端的操作数据同步至所述远程字典服务服务器的所述数据持久化队列中;其中,所述远程字典服务操作程序用于向所述远程字典服务服务器发起所述远程字典服务客户端的远程字典服务操作指令,所述数据推送程序用于向所述远程字典服务服务器发起所述数据同步指令。4.根据权利要求1

3任一项所述的方法,其特征在于,所述加载代理插件程序之前,还包括:接收插件配置指令,所述插件配置指令中包括所述代理插件程序的标识;根据所述插件配置指令,通过代理命令将所述代理插件程序配置为所述远程字典服务客户端的目标远程字典服务操作程序。5.根据权利要求4所述的方...

【专利技术属性】
技术研发人员:胡思豹马骋原陈德喜
申请(专利权)人:恒生电子股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1