CN112163042A - 多变数据同步方法、装置、电子装置及存储介质 - Google Patents
多变数据同步方法、装置、电子装置及存储介质 Download PDFInfo
- Publication number
- CN112163042A CN112163042A CN202011014983.6A CN202011014983A CN112163042A CN 112163042 A CN112163042 A CN 112163042A CN 202011014983 A CN202011014983 A CN 202011014983A CN 112163042 A CN112163042 A CN 112163042A
- Authority
- CN
- China
- Prior art keywords
- synchronization
- task
- synchronous
- data
- information
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 58
- 238000003860 storage Methods 0.000 title claims abstract description 12
- 230000001360 synchronised effect Effects 0.000 claims abstract description 191
- 238000012795 verification Methods 0.000 claims description 24
- 238000004590 computer program Methods 0.000 claims description 17
- 238000012545 processing Methods 0.000 claims description 16
- 230000008569 process Effects 0.000 claims description 13
- 238000010801 machine learning Methods 0.000 claims description 5
- 230000009286 beneficial effect Effects 0.000 abstract description 3
- 230000005540 biological transmission Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 230000000903 blocking effect Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000007792 addition Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 239000008280 blood Substances 0.000 description 1
- 210000004369 blood Anatomy 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000009191 jumping Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Hardware Redundancy (AREA)
Abstract
本申请涉及一种多变数据同步方法、装置、电子装置及存储介质。该多变数据同步方法包括:接收多个数据同步请求消息,数据同步请求消息至少包括多个业务系统发送的待同步的同步数据;获取预设的同步配置信息,并根据同步配置信息和待同步的同步数据确定多个同步任务信息,同步任务信息至少包括同步任务和定时任务周期;检测多个同步任务信息的定时任务周期是否小于第一时间间隔,第一时间间隔包括当前时间与上一次数据同步的时间差;在检测到定时任务周期小于第一时间间隔的情况下,按预设执行次序执行多个同步任务信息的同步任务。通过本申请,解决了高并发数据多变场景中数据同步效率低的问题,实现了提升高并发场景下多变数据同步效率的有益效果。
Description
技术领域
本申请涉及计算机技术领域,特别是涉及多变数据同步方法、装置、电子装置及存储介质。
背景技术
随着互联网的发展,特别是移动互联网,物联网等技术的更新迭代,已经进入了大数据时代。数据成为驱动业务信息系统的血液,不管是互联网企业还是传统的金融,教育,能源等行业,各种系统都离不开数据的驱动。
在云环境里,数据被存储到云上,在云系统的开发过程中,为了提高云系统安全和数据安全的性能,常常采用单点登录,然后跳转到第三方进行认证。而在跳转到第三方进行认证之前,需要将数据进行同步;面对第三方不可预测的对数据进行增删、改查的情况时,为了保持数据的正确性,需要反复的进行数据同步;在高并发数据持续修改变化的场景中,对据进行反复同步,会造成数据获取、解析压力大,数据同步效率低。
目前针对相关技术中高并发数据多变场景中数据同步效率低的问题,尚未提出有效的解决方案。
发明内容
本申请实施例提供了一种多变数据同步方法、装置、电子装置及存储介质,以至少解决相关技术中高并发数据多变场景中数据同步效率低的问题。
第一方面,本申请实施例提供了一种多变数据同步方法,应用于高并发场景下包括:接收多个数据同步请求消息,其中,所述数据同步请求消息至少包括多个业务系统发送的待同步的同步数据;获取预设的同步配置信息,并根据所述同步配置信息和所述待同步的同步数据确定多个同步任务信息,其中,所述同步任务信息至少包括同步任务和定时任务周期;检测所述多个同步任务信息的所述定时任务周期是否小于第一时间间隔,其中,所述第一时间间隔包括当前时间与上一次数据同步的时间差;在检测到所述定时任务周期小于所述第一时间间隔的情况下,按预设执行次序执行所述多个同步任务信息的所述同步任务。
在其中一些实施例中,检测所述多个同步任务信息的所述定时任务周期是否小于第一时间间隔包括:通过定时任务检测所述定时任务周期是否小于第一时间间隔。
在其中一些实施例中,所述同步配置信息包括任务调度间隔和时间间距极值,根据所述同步配置信息和所述待同步的同步数据确定多个同步任务信息包括:确定每一个所述同步任务对应的同步任务目标,其中,所述同步任务目标至少包括每一个所述业务系统发送的所述待同步的同步数据;根据所述任务调度间隔和所述时间间距极值的差值确定定时任务周期,其中,所述时间间距极值由预设的时间间隔初值通过机器学习算法生成;根据所述同步任务目标和所述定时任务周期生成所述同步任务信息。
在其中一些实施例中,所述同步任务信息还包括同步所述待同步的同步数据的消费者,按预设执行次序执行所述多个同步任务信息的所述同步任务包括:
采用进程管理组件唤醒多个所述消费者,并通过所述多个消费者轮询消费所述多个同步任务中的待执行的所述同步任务。
在其中一些实施例中,在按预设执行次序执行所述多个同步任务之后,所述方法包括:获取所述多个同步任务的第一执行情况,并根据所述第一执行情况更新所述多个同步任务的任务状态,其中,所述任务状态包括:同步中、同步失败和同步完成。
在其中一些实施例中,所述同步任务信息还包括同步任务重复执行信息,所述方法还包括:在所述同步任务处于第二执行情况时,根据所述同步任务重复执行信息重复执行所述同步任务,其中,所述第二执行情况包括同步失败;
获取根据所述同步任务重复执行信息重复执行所述同步任务后的第三执行情况,并判断在所述第三执行情况下所述同步任务对应的所述任务状态;
在判断到在所述第三执行情况下所述同步任务对应的所述任务状态包括所述同步失败的情况下,将所述同步任务的状态更新为同步失败。
在其中一些实施例中,在接收多个数据同步请求消息之后,所述方法还包括:对所述请求消息进行验证,得到验证结果;在所述验证结果为验证通过的情况下,执行确定多个同步任务信息和按预设执行次序执行所述多个同步任务信息的所述同步任务的步骤;在所述验证结果为验证不通过的情况下,接受更新调整后请求信息。
第二方面,本申请实施例提供了一种多变数据同步装置,包括:
接收模块,用于接收多个数据同步请求消息,其中,所述数据同步请求消息至少包括多个业务系统发送的待同步的同步数据;
确定模块,用于获取预设的同步配置信息,并根据所述同步配置信息和所述待同步的同步数据确定多个同步任务信息,其中,所述同步任务信息至少包括同步任务和定时任务周期;
检测模块,用于检测所述多个同步任务信息的所述定时任务周期是否小于第一时间间隔,其中,所述第一时间间隔包括当前时间与上一次数据同步的时间差;
处理模块,用于在检测到所述定时任务周期小于所述第一时间间隔的情况下,按预设执行次序执行所述多个同步任务信息的所述同步任务。
第三方面,本申请实施例提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行第一方面所述的多变数据同步方法。
第四方面,本申请实施例提供了一种存储介质,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行第一方面所述的多变数据同步方法。
相比于相关技术,本申请实施例提供的一种多变数据同步方法、装置、电子装置及存储介质,通过接收多个数据同步请求消息,其中,数据同步请求消息至少包括多个业务系统发送的待同步的同步数据;获取预设的同步配置信息,并根据同步配置信息和待同步的同步数据确定多个同步任务信息,其中,同步任务信息至少包括同步任务和定时任务周期;检测多个同步任务信息的定时任务周期是否小于第一时间间隔,其中,第一时间间隔包括当前时间与上一次数据同步的时间差;在检测到定时任务周期小于第一时间间隔的情况下,按预设执行次序执行多个同步任务信息的同步任务,解决了相关技术中高并发数据多变场景中数据同步效率低的问题,实现了提升高并发场景下多变数据同步效率的有益效果。
本申请的一个或多个实施例的细节在以下附图和描述中提出,以使本申请的其他特征、目的和优点更加简明易懂。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是本发明实施例的多变数据同步方法的终端的硬件结构框图;
图2是根据本申请实施例的多变数据同步方法的流程图;
图3是根据本申请实施例的多变数据同步装置的结构框图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行描述和说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。基于本申请提供的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
显而易见地,下面描述中的附图仅仅是本申请的一些示例或实施例,对于本领域的普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图将本申请应用于其他类似情景。此外,还可以理解的是,虽然这种开发过程中所作出的努力可能是复杂并且冗长的,然而对于与本申请公开的内容相关的本领域的普通技术人员而言,在本申请揭露的技术内容的基础上进行的一些设计,制造或者生产等变更只是常规的技术手段,不应当理解为本申请公开的内容不充分。
在本申请中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域普通技术人员显式地和隐式地理解的是,本申请所描述的实施例在不冲突的情况下,可以与其它实施例相结合。
除非另作定义,本申请所涉及的技术术语或者科学术语应当为本申请所属技术领域内具有一般技能的人士所理解的通常意义。本申请所涉及的“一”、“一个”、“一种”、“该”等类似词语并不表示数量限制,可表示单数或复数。本申请所涉及的术语“包括”、“包含”、“具有”以及它们任何变形,意图在于覆盖不排他的包含;例如包含了一系列步骤或模块(单元)的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可以还包括没有列出的步骤或单元,或可以还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。本申请所涉及的“连接”、“相连”、“耦接”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电气的连接,不管是直接的还是间接的。本申请所涉及的“多个”是指两个或两个以上。“和/或”描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。本申请所涉及的术语“第一”、“第二”、“第三”等仅仅是区别类似的对象,不代表针对对象的特定排序。
本申请中描述的各种技术可用于不同系统环境下的多数据的高效同步。本申请中多变数据同步方法的应用场景包括但云环境。
在对本申请的实施例进行阐述说明之前,此处,对本申请实施例的产生的背景进行简述如下:分布式系统中,按数据的获取方式,数据的同步模式包括两种大的分类:分别为pull模式和push模式。
假定分布式系统中有平台A和平台B,且平台A需要B平台数据。
pull模式下,平台A为client端,平台B为server端,平台B给平台A提供API(Application Programming Interface,应用程序接口),平台A周期性的去轮询查询平台B,其中,轮询查询方式包括全量方式或者增量方式。常见的pull模式有:调用API、远程过程中调用RPC。
push模式下,平台A为Server端,平台B为client端,平台B会将数据以全量或者增量的方式主动发送给平台A的服务器,供平台A解析存储和使用,常见的push模式有:SCIM协议。
在数据同步过程中,采用pull模式,则需要平台A定时任务轮询拉取平台B的数据,对于高并发数据持续修改变化的场景,平台A的拉取数据和解析压力会很大;而采用push模式,则要求平台A维持一套高成本的server去保持与平台B的数据同步的增删改查行为,并通过数据处理才能获取平台A预期的数据。
pull模式和push模式各有利弊,不能达到一个很好的代价权衡,进而需要一种回避push模式需求一套高成本的Server,合理利用pull模式,使得高并发场景下并行任务串行化的多变数据同步方法,例如:本申请实施例所产生的多变数据同步方法。
本实施例提供的方法实施例可以在终端、计算机或者类似的运算装置中执行。以运行在终端上为例,图1是本发明实施例的多变数据同步方法运行终端的硬件结构框图。如图1所示,终端可以包括一个或多个(图1中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)和用于存储数据的存储器104,可选地,上述终端还可以包括用于通信功能的传输设备106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述终端的结构造成限定。例如,终端还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
存储器104可用于存储计算机程序,例如,应用软件的软件程序以及模块,如本发明实施例中的多变数据同步方法对应的计算机程序,处理器102通过运行存储在存储器104内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输设备106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括终端的通信供应商提供的无线网络。在一个实例中,传输设备106包括一个网络适配器(Network Interface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输设备106可以为射频(Radio Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。
本实施例提供了一种多变数据同步方法,图2是根据本申请实施例的多变数据同步方法的流程图,如图2所示,该流程包括如下步骤:
步骤S201,接收多个数据同步请求消息,其中,数据同步请求消息至少包括多个业务系统发送的待同步的同步数据。
在本实施例中,执行数据同步的主体包括数据中心,而数据中心接收的同步的数据来自多个不同的业务系统,且多个不同的业务系统通过在各自的配置界面配置向数据中心发送请求同步的同步数据。
在本实施例中,数据中心接收的数据同步请求信息至少包括以下其中之一:业务系统名称、业务系统的角色信息(例如:管理员、用户)、同步数据。
需要说明的是,数据中心在接收数据同步请求消息后,会对数据同步请求消息进行验证,并返回验证结果给业务系统,当业务系统收到验证不通过时,则会根据验证结果中对应的不通过原因进行数据同步请求信息的调整,例如:验证结果中对应的不通过原因为请求同步的同步数据的数据量超过数据中心当次数据同步处理的数据量阈值,对应的业务系统通过减少对应的同步数据的数据量,重新发送数据同步请求消息;数据中心根据调整并重新请求的数据同步请求消息进行对应的数据同步。
步骤S202,获取预设的同步配置信息,并根据同步配置信息和待同步的同步数据确定多个同步任务信息,其中,同步任务信息至少包括同步任务和定时任务周期。
在本实施例中,同步配置信息是指示数据中心如何根据配置信息对待同步的同步数据进行同步处理,例如:同步处理的数据量、处理时间间隔、处理开始的时间。
需要说明的是,数据中心在接收到同步数据后,会进行同步配置信息的配置,其中,配置的同步配置信息包括时间信息、同步任务尝试次数、同步任务/消费者数;同时,在配置完同步配置信息后,数据中心还进行同步任务的创建,也就是按同步配置信息对应的内容及要求将待同步的同步数据创建为多个同步任务目标,并根据多个同步任务目标生成多个同步任务信息,生成的多个同步任务信息存储在任务库中。在本实施例中,存储在任务库中的同步任务信息包括同步任务的ID、同步任务及任务状态,而任务状态至少包括:同步中、同步完成、未同步、同步失败。
在本实施例,存储在任务库中的同步任务的初始状态均为未同步,在数据中心对多个同步任务进行执行时,同步任务的任务状态实时发生变化。
需要进一步说明的是,本实施例中的时间信息是确定同步任务进行的基础要素,同时,通过配置的同步配置信息和接收到的同步数据,数据中心则能创建对应的同步任务,通过同步任务进而完成对应的数据同步的过程。
步骤S203,检测多个同步任务信息的定时任务周期是否小于第一时间间隔,其中,第一时间间隔包括当前时间与上一次数据同步的时间差。
在本实施例中,对定时任务周期的检查是采用定时任务组件完成的,并且,本申请实施例中的定时任务组件包括但不限于crontab,其中,crontab是用来让数据中心在固定时间或固定间隔执行同步任务。
步骤S204,在检测到定时任务周期小于第一时间间隔的情况下,按预设执行次序执行多个同步任务信息的同步任务。
在本实施例中,数据中心按以下公式检查定时任务周期是否小于第一时间间隔:CurrentTime-LastSyncTime≥SchedulerIntervalTime-minIntervalTime,其中,CurrentTime为当前时间,LastSyncTime为上一次数据同步的时间,SchedulerIntervalTime为任务调度间隔,minIntervalTime为时间间距极值,CurrentTime-LastSyncTime对应为第一时间间隔,SchedulerIntervalTime-minIntervalTime对应为定时任务周期,且定时任务周期是可以根据同步业务需求进行设定的;如果满足上述条件,则从任务库中按预设执行次序选择同步任务信息中的同步任务,其中,选取的同步任务的数目n≤生产/消费同步任务的消费者数m。
需要说明的是,本实施例中的生成/消费同步任务的消费者是指在多线程中的生成者与消费者,其中,生产者是生产数据的线程,消费者是消费数据的线程,生产者与消费者模式是通过一个共享资源缓冲区来解决生产者和消费者的强耦合问题,生产者与消费者之间不需要通信,生产者生产的数据放入阻塞队列中,而消费者从阻塞队列中从取出数据,阻塞队列就相当于一个缓冲区,同时生成与消费还需要有一个生产与消费的平衡,这样将生成者与消费者进行解耦。
通过上述步骤S201至步骤S204,采用接收多个数据同步请求消息,其中,数据同步请求消息至少包括多个业务系统发送的待同步的同步数据;获取预设的同步配置信息,并根据同步配置信息和待同步的同步数据确定多个同步任务信息,其中,同步任务信息至少包括同步任务和定时任务周期;检测多个同步任务信息的定时任务周期是否小于第一时间间隔,其中,第一时间间隔包括当前时间与上一次数据同步的时间差;在检测到定时任务周期小于第一时间间隔的情况下,按预设执行次序执行多个同步任务信息的同步任务,解决了相关技术中高并发数据多变场景中数据同步效率低的问题,实现了提升高并发场景下多变数据同步效率的有益效果。
在其中一些实施例中,检测多个同步任务信息的定时任务周期是否小于第一时间间隔包括如下步骤:通过定时任务检测定时任务周期是否小于第一时间间隔。
在本实施例中,采用定时任务组件检测定时任务周期是否小于第一时间间隔,并且,本申请实施例中的定时任务组件包括但不限于crontab,其中,crontab是用来让数据中心在固定时间或固定间隔执行同步任务;本申请实施例中的第一时间间隔为当前时间与上一次数据同步完成时间的时间差,通过检测该时间差与预设的定时任务周期的差值,从而确定当前时间是否可以执行同步任务。
在其中一些实施例中,同步配置信息包括任务调度间隔和时间间距极值,根据同步配置信息和待同步的同步数据确定多个同步任务信息包括如下步骤:
步骤1,确定每一个同步任务对应的同步任务目标,其中,同步任务目标至少包括每一个业务系统发送的待同步的同步数据。
本实施例中,构成同步任务目标的对象为待同步的数据,同步任务目标的确定是通过将同步数据按数据量或数据类型或数据集合进行划分,从而确定对应的同步任务目标。
步骤2,根据任务调度间隔和时间间距极值的差值确定定时任务周期,其中,时间间距极值由预设的时间间隔初值通过机器学习算法生成。
在本实施例中,设置时间间隔极值的目的在于:当同步任务池中存在足量的同步任务时,同步任务池中的同步任务也不会堵塞,时间间距极值的初值是预设的定时任务的时间间隔极值,在设定时间间隔极值初值后,时间间隔极值则是通过机器学习算法进行学习,并采用正态分布模型调整得到的最佳值。
步骤3,根据同步任务目标和定时任务周期生成同步任务信息。
通过上述的确定每一个同步任务对应的同步任务目标;根据任务调度间隔和时间间距极值的差值确定定时任务周期;根据同步任务目标和定时任务周期生成同步任务信息,实现根据同步配置信息确定同步任务信息。
在其中一些实施例中,同步任务信息还包括同步待同步的同步数据的消费者,按预设执行次序执行多个同步任务信息的同步任务包括如下步骤:采用进程管理组件唤醒多个消费者,并通过多个消费者轮询消费多个同步任务中的待执行的同步任务。
在本实施例中,进程管理组件包括SuperVisord组件,并且通过SuperVisord组件唤醒配置的同步配置信息中的多个消费者,并不断轮询消费同步任务中待执行的同步任务,直至数据中心完成最终的数据同步的任务。
在其中一些实施例中,在按预设执行次序执行多个同步任务之后,还包括如下步骤:获取多个同步任务的第一执行情况,并根据第一执行情况更新多个同步任务的任务状态,其中,任务状态包括:同步中、同步失败和同步完成。
在其中一些实施例中,同步任务信息还包括同步任务重复执行信息,多变数据同步方法还包括如下步骤:
步骤1,在同步任务处于第二执行情况时,根据同步任务重复执行信息重复执行同步任务,其中,第二执行情况包括同步失败。
步骤2,获取根据同步任务重复执行信息重复执行同步任务后的第三执行情况,并判断在第三执行情况下同步任务对应的任务状态。
在本实施例中,同步任务重复执行信息对应同步任务被允许尝试执行的次数,当判断到同步任务尝试执行的次数超过设定的被允许执行的次数后,同步任务依旧为同步失败,则将同步任务的状态更新为同步失败。
步骤3,在判断到在第三执行情况下同步任务对应的任务状态包括同步失败的情况下,将同步任务的状态更新为同步失败。
在其中一些实施例中,在接收多个数据同步请求消息之后,多变数据同步方法还包括如下步骤:
步骤1,对请求消息进行验证,得到验证结果。
步骤2,在验证结果为验证通过的情况下,执行确定多个同步任务信息和按预设执行次序执行多个同步任务信息的同步任务的步骤。
步骤3,在验证结果为验证不通过的情况下,接受更新调整后请求信息。
本实施例还提供了一种多变数据同步装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”、“单元”、“子单元”等可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图3是根据本申请实施例的多变数据同步装置的结构框图,如图3所示,该装置包括:
接收模块31,用于接收多个数据同步请求消息,其中,数据同步请求消息至少包括多个业务系统发送的待同步的同步数据。
确定模块32,与接收模块31耦合连接,用于获取预设的同步配置信息,并根据同步配置信息和待同步的同步数据确定多个同步任务信息,其中,同步任务信息至少包括同步任务和定时任务周期。
检测模块33,与确定模块耦合连接,用于检测多个同步任务信息的定时任务周期是否小于第一时间间隔,其中,第一时间间隔包括当前时间与上一次数据同步的时间差。
处理模块34,与检测模块33耦合连接,用于在检测到定时任务周期小于第一时间间隔的情况下,按预设执行次序执行多个同步任务信息的同步任务。
在其中一些实施例中,处理模块34还用于在客户端请求访问服务进程完成后,将服务进程进行休眠。
在其中一些实施例中,检测模块33用于通过定时任务检测定时任务周期是否小于第一时间间隔。
在其中一些实施例中,同步配置信息包括任务调度间隔和时间间距极值,确定模块32用于确定每一个同步任务对应的同步任务目标,其中,同步任务目标至少包括每一个业务系统发送的待同步的同步数据;根据任务调度间隔和时间间距极值的差值确定定时任务周期,其中,时间间距极值由预设的时间间隔初值通过机器学习算法生成;根据同步任务目标和定时任务周期生成同步任务信息。
在其中一些实施例中,同步任务信息还包括同步待同步的同步数据的消费者,处理模块34用于采用进程管理组件唤醒多个消费者,并通过多个消费者轮询消费多个同步任务中的待执行的同步任务。
在其中一些实施例中,多变数据同步装置还用于获取多个同步任务的第一执行情况,并根据第一执行情况更新多个同步任务的任务状态,其中,任务状态包括:同步中、同步失败和同步完成。
在其中一些实施例中,同步任务信息还包括同步任务重复执行信息,多变数据同步装置还用于在同步任务处于第二执行情况时,根据同步任务重复执行信息重复执行同步任务,其中,第二执行情况包括同步失败;获取根据同步任务重复执行信息重复执行同步任务后的第三执行情况,并判断在第三执行情况下同步任务对应的任务状态;在判断到在第三执行情况下同步任务对应的任务状态包括同步失败的情况下,将同步任务的状态更新为同步失败。
在其中一些实施例中,接收模块31还用于对请求消息进行验证,得到验证结果;在验证结果为验证通过的情况下,执行确定多个同步任务信息和按预设执行次序执行多个同步任务信息的同步任务的步骤;在验证结果为验证不通过的情况下,接受更新调整后请求信息。
需要说明的是,上述各个模块可以是功能模块也可以是程序模块,既可以通过软件来实现,也可以通过硬件来实现。对于通过硬件来实现的模块而言,上述各个模块可以位于同一处理器中;或者上述各个模块还可以按照任意组合的形式分别位于不同的处理器中。
本实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
可选地,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1,接收多个数据同步请求消息,其中,数据同步请求消息至少包括多个业务系统发送的待同步的同步数据。
S2,获取预设的同步配置信息,并根据同步配置信息和待同步的同步数据确定多个同步任务信息,其中,同步任务信息至少包括同步任务和定时任务周期。
S3,检测多个同步任务信息的定时任务周期是否小于第一时间间隔,其中,第一时间间隔包括当前时间与上一次数据同步的时间差。
S4,在检测到定时任务周期小于第一时间间隔的情况下,按预设执行次序执行多个同步任务信息的同步任务。
需要说明的是,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。
另外,结合上述实施例中的多变数据同步方法,本申请实施例可提供一种存储介质来实现。该存储介质上存储有计算机程序;该计算机程序被处理器执行时实现上述实施例中的任意一种多变数据同步方法。
本领域的技术人员应该明白,以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种多变数据同步方法,应用于高并发场景下,其特征在于,包括:
接收多个数据同步请求消息,其中,所述数据同步请求消息至少包括多个业务系统发送的待同步的同步数据;
获取预设的同步配置信息,并根据所述同步配置信息和所述待同步的同步数据确定多个同步任务信息,其中,所述同步任务信息至少包括同步任务和定时任务周期;
检测所述多个同步任务信息的所述定时任务周期是否小于第一时间间隔,其中,所述第一时间间隔包括当前时间与上一次数据同步的时间差;
在检测到所述定时任务周期小于所述第一时间间隔的情况下,按预设执行次序执行所述多个同步任务信息的所述同步任务。
2.根据权利要求1所述的多变数据同步方法,其特征在于,检测所述多个同步任务信息的所述定时任务周期是否小于第一时间间隔包括:通过定时任务检测所述定时任务周期是否小于第一时间间隔。
3.根据权利要求1所述的多变数据同步方法,其特征在于,所述同步配置信息包括任务调度间隔和时间间距极值,根据所述同步配置信息和所述待同步的同步数据确定多个同步任务信息包括:
确定每一个所述同步任务对应的同步任务目标,其中,所述同步任务目标至少包括每一个所述业务系统发送的所述待同步的同步数据;
根据所述任务调度间隔和所述时间间距极值的差值确定定时任务周期,其中,所述时间间距极值由预设的时间间隔初值通过机器学习算法生成;
根据所述同步任务目标和所述定时任务周期生成所述同步任务信息。
4.根据权利要求1所述的多变数据同步方法,其特征在于,所述同步任务信息还包括同步所述待同步的同步数据的消费者,按预设执行次序执行所述多个同步任务信息的所述同步任务包括:
采用进程管理组件唤醒多个所述消费者,并通过所述多个消费者轮询消费所述多个同步任务中的待执行的所述同步任务。
5.根据权利要求1所述的多变数据同步方法,其特征在于,在按预设执行次序执行所述多个同步任务之后,所述方法包括:
获取所述多个同步任务的第一执行情况,并根据所述第一执行情况更新所述多个同步任务的任务状态,其中,所述任务状态包括:同步中、同步失败和同步完成。
6.根据权利要求5所述的多变数据同步方法,其特征在于,所述同步任务信息还包括同步任务重复执行信息,所述方法还包括:
在所述同步任务处于第二执行情况时,根据所述同步任务重复执行信息重复执行所述同步任务,其中,所述第二执行情况包括同步失败;
获取根据所述同步任务重复执行信息重复执行所述同步任务后的第三执行情况,并判断在所述第三执行情况下所述同步任务对应的所述任务状态;
在判断到在所述第三执行情况下所述同步任务对应的所述任务状态包括所述同步失败的情况下,将所述同步任务的状态更新为同步失败。
7.根据权利要求1所述的多变数据同步方法,其特征在于,在接收多个数据同步请求消息之后,所述方法还包括:
对所述请求消息进行验证,得到验证结果;
在所述验证结果为验证通过的情况下,执行确定多个同步任务信息和按预设执行次序执行所述多个同步任务信息的所述同步任务的步骤;
在所述验证结果为验证不通过的情况下,接受更新调整后请求信息。
8.一种多变数据同步装置,其特征在于,包括:
接收模块,用于接收多个数据同步请求消息,其中,所述数据同步请求消息至少包括多个业务系统发送的待同步的同步数据;
确定模块,用于获取预设的同步配置信息,并根据所述同步配置信息和所述待同步的同步数据确定多个同步任务信息,其中,所述同步任务信息至少包括同步任务和定时任务周期;
检测模块,用于检测所述多个同步任务信息的所述定时任务周期是否小于第一时间间隔,其中,所述第一时间间隔包括当前时间与上一次数据同步的时间差;
处理模块,用于在检测到所述定时任务周期小于所述第一时间间隔的情况下,按预设执行次序执行所述多个同步任务信息的所述同步任务。
9.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行权利要求1至7中任一项所述的多变数据同步方法。
10.一种存储介质,其特征在于,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行权利要求1至7中任一项所述的多变数据同步方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011014983.6A CN112163042B (zh) | 2020-09-24 | 2020-09-24 | 多变数据同步方法、装置、电子装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011014983.6A CN112163042B (zh) | 2020-09-24 | 2020-09-24 | 多变数据同步方法、装置、电子装置及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112163042A true CN112163042A (zh) | 2021-01-01 |
CN112163042B CN112163042B (zh) | 2024-01-23 |
Family
ID=73863691
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011014983.6A Active CN112163042B (zh) | 2020-09-24 | 2020-09-24 | 多变数据同步方法、装置、电子装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112163042B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112947097A (zh) * | 2021-01-29 | 2021-06-11 | 青岛海尔科技有限公司 | 用于绘制家居设备运行状态曲线的方法、装置和显示终端 |
CN113076186A (zh) * | 2021-05-07 | 2021-07-06 | 泰康保险集团股份有限公司 | 任务处理的方法、装置、电子设备和存储介质 |
CN114296910A (zh) * | 2021-12-02 | 2022-04-08 | 武汉物易云通网络科技有限公司 | 一种多分区队列顺序消费方法和装置 |
CN114553895A (zh) * | 2022-04-24 | 2022-05-27 | 浙江中控技术股份有限公司 | 一种数据同步方法、系统、存储介质及电子设备 |
CN114817342A (zh) * | 2022-07-04 | 2022-07-29 | 杭州安恒信息技术股份有限公司 | 一种数据同步方法、装置、设备及介质 |
CN115834601A (zh) * | 2022-11-11 | 2023-03-21 | 中国电子科技集团公司第十研究所 | 基于多中心的数据同步方法、装置、设备及介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017177621A1 (zh) * | 2016-04-12 | 2017-10-19 | 乐视控股(北京)有限公司 | 一种局域网内数据同步方法及其装置、用户终端 |
CN108173615A (zh) * | 2018-01-22 | 2018-06-15 | 北京凌宇智控科技有限公司 | 一种时钟同步方法和系统、计算机可读存储介质 |
CN109446268A (zh) * | 2018-10-09 | 2019-03-08 | 联动优势科技有限公司 | 一种数据同步方法及装置 |
CN111090699A (zh) * | 2019-12-13 | 2020-05-01 | 北京奇艺世纪科技有限公司 | 业务数据的同步方法和装置、存储介质、电子装置 |
CN111352994A (zh) * | 2020-02-04 | 2020-06-30 | 浙江大华技术股份有限公司 | 数据同步方法以及相关设备、装置 |
-
2020
- 2020-09-24 CN CN202011014983.6A patent/CN112163042B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017177621A1 (zh) * | 2016-04-12 | 2017-10-19 | 乐视控股(北京)有限公司 | 一种局域网内数据同步方法及其装置、用户终端 |
CN108173615A (zh) * | 2018-01-22 | 2018-06-15 | 北京凌宇智控科技有限公司 | 一种时钟同步方法和系统、计算机可读存储介质 |
CN109446268A (zh) * | 2018-10-09 | 2019-03-08 | 联动优势科技有限公司 | 一种数据同步方法及装置 |
CN111090699A (zh) * | 2019-12-13 | 2020-05-01 | 北京奇艺世纪科技有限公司 | 业务数据的同步方法和装置、存储介质、电子装置 |
CN111352994A (zh) * | 2020-02-04 | 2020-06-30 | 浙江大华技术股份有限公司 | 数据同步方法以及相关设备、装置 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112947097A (zh) * | 2021-01-29 | 2021-06-11 | 青岛海尔科技有限公司 | 用于绘制家居设备运行状态曲线的方法、装置和显示终端 |
CN112947097B (zh) * | 2021-01-29 | 2023-06-16 | 青岛海尔科技有限公司 | 用于绘制家居设备运行状态曲线的方法、装置和显示终端 |
CN113076186A (zh) * | 2021-05-07 | 2021-07-06 | 泰康保险集团股份有限公司 | 任务处理的方法、装置、电子设备和存储介质 |
CN113076186B (zh) * | 2021-05-07 | 2023-07-28 | 泰康保险集团股份有限公司 | 任务处理的方法、装置、电子设备和存储介质 |
CN114296910A (zh) * | 2021-12-02 | 2022-04-08 | 武汉物易云通网络科技有限公司 | 一种多分区队列顺序消费方法和装置 |
CN114296910B (zh) * | 2021-12-02 | 2022-11-22 | 武汉物易云通网络科技有限公司 | 一种多分区队列顺序消费方法和装置 |
CN114553895A (zh) * | 2022-04-24 | 2022-05-27 | 浙江中控技术股份有限公司 | 一种数据同步方法、系统、存储介质及电子设备 |
CN114817342A (zh) * | 2022-07-04 | 2022-07-29 | 杭州安恒信息技术股份有限公司 | 一种数据同步方法、装置、设备及介质 |
CN115834601A (zh) * | 2022-11-11 | 2023-03-21 | 中国电子科技集团公司第十研究所 | 基于多中心的数据同步方法、装置、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112163042B (zh) | 2024-01-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112163042B (zh) | 多变数据同步方法、装置、电子装置及存储介质 | |
CN112508205B (zh) | 一种联邦学习调度方法、装置及系统 | |
CN101981531B (zh) | 聚集循环调度以优化资源消耗 | |
US8521887B2 (en) | Aggregating connection maintenance to optimize resource consumption | |
Galluzzi et al. | Survey: discovery in wireless sensor networks | |
US10268506B2 (en) | Method and system for master less node communication | |
CN109298924A (zh) | 定时任务的管理方法、计算机可读存储介质和终端设备 | |
US20160366642A1 (en) | Method and system for synchronizing communication between nodes in a bluetooth network | |
Hirsch et al. | DewSim: A trace‐driven toolkit for simulating mobile device clusters in Dew computing environments | |
CN112751847A (zh) | 接口调用请求的处理方法、装置、电子设备及存储介质 | |
KR102020358B1 (ko) | 단말 및 그 단말에서 애플리케이션 동기화 방법 | |
CN109388501B (zh) | 基于人脸识别请求的通信匹配方法、装置、设备及介质 | |
CN113032160B (zh) | 一种数据同步的管理方法以及相关装置 | |
CN105577310B (zh) | 一种时间触发以太网络中任务分区与通信调度的同步方法 | |
Barenboim et al. | Deterministic and energy-optimal wireless synchronization | |
US11191026B1 (en) | Methods and systems for increased power save efficiency in wireless communications networks | |
CN110457087A (zh) | 多平台配置数据同步方法、装置及系统 | |
CN114968503A (zh) | 业务定时处理方法、装置、电子设备及存储介质 | |
Hwang et al. | Ultra low power data aggregation for request oriented sensor networks | |
CN114978805B (zh) | 基于低功耗蓝牙的指令同步方法及系统 | |
Xie et al. | Research on OTA Optimization of Wireless Sensor Networks Based on CSMA/CA Improved Algorithm | |
CN114817411B (zh) | 分布式图学习方法和装置 | |
Birk et al. | Efficient dynamic aggregation | |
Liu et al. | A Little Certainty is All We Need: Discovery and Synchronization Acceleration in Battery-Free IoT | |
CN115098065A (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 |