分布式缓存同步方法、装置、节点和系统制造方法及图纸

技术编号:14854117 阅读:111 留言:0更新日期:2017-03-18 20:59
本公开实施例公开了一种分布式缓存同步方法、装置、节点和系统,涉及分布式缓存同步领域,能够提高分布式缓存同步的更新效率。该方法包括:分析日志文件数据;基于分析结果确定同步更新方式;以及基于所确定的同步更新方式来通知更新。

【技术实现步骤摘要】

本公开涉及分布式缓存同步领域,具体地,涉及一种分布式缓存同步方法、装置、节点和系统
技术介绍
目前,进行分布式缓存同步的方法通常包括以下三种:1、存在数据更新的节点只向其他节点广播更新通知。2、存在数据更新的节点只向其他节点广播更新数据。3、存在数据更新的节点只向其他节点广播更新操作。然而,这三种方法都属于静态分布式缓存同步方法,其没有考虑节点的自身性能,因此会导致更新效率低下。
技术实现思路
本公开实施例的目的是提供一种分布式缓存同步方法、装置、节点和系统,其能够提高分布式缓存同步的更新效率。根据本公开实施例的第一方面,提供一种分布式缓存同步方法,该方法包括:分析日志文件数据;基于分析结果确定同步更新方式;以及基于所确定的同步更新方式来通知更新。可选地,所述日志文件数据包括缓存中存储的数据对象的标识、操作方法名、参数序列大小、操作类型、操作执行的开始时间、操作执行的结束时间和操作返回值大小。可选地,所述基于分析结果确定同步更新方式包括:在所述分析结果为缓存中存储的数据对象的历史查询次数与历史更新次数的比率小于第一阈值而且所述缓存中存储的数据对象的更新操作所消耗的时间小于第二阈值时,确定所述同步更新方式为只传播更新的数据;在所述分析结果为所述缓存中存储的数据对象的历史查询次数与历史更新次数的比率大于等于所述第一阈值而且所述缓存中存储的数据对象的更新操作所消耗的时间大于等于所述第二阈值时,确定所述同步更新方式为只传播更新通知;以及在所述分析结果为所述缓存中存储的数据对象的历史查询次数与历史更新次数的比率小于所述第一阈值而且所述缓存中存储的数据对象的更新操作所消耗的时间大于等于所述第二阈值或者所述缓存中存储的数据对象的历史查询次数与历史更新次数的比率大于等于所述第一阈值而且所述缓存中存储的数据对象的更新操作所消耗的时间小于所述第二阈值时,确定所述同步更新方式为只传播更新操作的方法名和参数序列。根据本公开实施例的第二方面,提供一种分布式缓存同步装置,该装置包括:分析模块,用于分析日志文件数据;确定模块,用于基于分析结果确定同步更新方式;以及通知模块,用于基于所确定的同步更新方式来通知更新。可选地,所述日志文件数据包括缓存中存储的数据对象标识、操作方法名、参数序列大小、操作类型、操作执行的开始时间、操作执行的结束时间和操作返回值大小。可选地,所述确定模块基于分析结果确定同步更新方式包括:在所述分析结果为缓存中存储的数据对象的历史查询次数与历史更新次数的比率小于第一阈值而且所述缓存中存储的数据对象的更新操作所消耗的时间小于第二阈值时,所述确定模块确定所述同步更新方式为只传播更新的数据;在所述分析结果为所述缓存中存储的数据对象的历史查询次数与历史更新次数的比率大于等于所述第一阈值而且所述缓存中存储的数据对象的更新操作所消耗的时间大于等于所述第二阈值时,所述确定模块确定所述同步更新方式为只传播更新通知;以及在所述分析结果为所述缓存中存储的数据对象的历史查询次数与历史更新次数的比率小于所述第一阈值而且所述缓存中存储的数据对象的更新操作所消耗的时间大于等于所述第二阈值或者所述缓存中存储的数据对象的历史查询次数与历史更新次数的比率大于等于所述第一阈值而且所述缓存中存储的数据对象的更新操作所消耗的时间小于所述第二阈值时,所述确定模块确定所述同步更新方式为只传播更新操作的方法名和参数序列。根据本公开实施例的第三方面,提供一种分布式缓存同步节点,该节点包括上面描述的装置。根据本公开实施例的第四方面,提供一种分布式缓存同步系统,该系统包括:N个如上所述的节点;以及数据库,用于备份N个所述节点上的数据。可选地,每个所述节点还包括更新模块,用于在其他所述节点中的所述通知模块通知更新时,基于所述同步更新方式来进行更新。可选地,所述更新模块基于所述同步更新方式来进行更新包括:在所述同步更新方式为只传播更新的数据时,所述更新模块用于接收更新数据并更新本地缓存;在所述同步更新方式为只传播更新通知时,所述更新模块用于接收更新通知,并然后向所述数据库发送数据查询请求以更新本地缓存;以及在所述同步更新方式为只传播更新操作的方法名和参数序列时,所述更新模块用于接收更新操作的方法名和参数序列,并从本地查找和调用相匹配的操作方法来更新本地缓存。通过上述技术方案,由于本公开实施例首先分析日志文件数据,然后基于分析结果确定同步更新方式,然后基于所确定的同步更新方式来通知更新,因此其能够根据诸如服务器、节点等的当前性能特征来选择合适的同步更新方式,也即是一种动态的同步更新方式,因此其能够有效地提高分布式缓存同步更新的效率。本公开实施例的其他特征和优点将在随后的具体实施方式部分予以详细说明。附图说明附图是用来提供对本公开实施例的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本公开实施例,但并不构成对本公开实施例的限制。在附图中:图1是根据本公开一种实施例的分布式缓存同步方法的流程图;图2是根据本公开一种实施例的分布式缓存同步系统的示意框图;图3是根据本公开一种实施例的分布式缓存同步节点的示意框图;图4是根据本公开一种实施例的分布式缓存同步系统的示意框图;以及图5是根据本公开又一实施例的分布式缓存同步系统的示意框图。具体实施方式以下结合附图对本公开实施例的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本公开实施例,并不用于限制本公开实施例。本公开实施例所涉及的应用场景包括由多个服务器、节点等组成的分布式缓存系统,由多个对等节点组成的对等网络,等等。根据本公开实施例的第一方面,提供一种分布式缓存同步方法,如图1所示,该方法可以包括步骤S101至步骤S103。在步骤S101中,分析日志文件数据。当用户执行缓存操作时,就会在本地生成日志文件,用以记录与缓存操作的执行有关的各种数据。例如,所述日志文件数据可以包括缓存中存储的数据对象的标识、操作方法名、参数序列大小、操作类型、操作执行的开始时间、操作执行的结束时间和操作返回值大小等等。本领域技术人员应当理解,上述日志文件数据所包括的数据项仅是举例,而非穷举。其中,缓存中存储的数据对象的标识用于标识缓存中存储的数据对象。操作方法名指的是操作方法的签名,或者简称为方法名或函数名。以以下程序为例进行说明。addObject1就是操作方法名,表示向数据库中新增数据。Parmeter1、parmeter2表示操作方法中涉及的参数。List<Object>表示返回值,也即返回List<Object>类型的数据。Public表示操作方法的访问权限,也即公有权限。publicList<Object>addObject1(Stringparmeter1,List<Object>parmeter2,….){//方法体本文档来自技高网...
分布式缓存同步方法、装置、节点和系统

【技术保护点】
一种分布式缓存同步方法,其特征在于,该方法包括:分析日志文件数据;基于分析结果确定同步更新方式;以及基于所确定的同步更新方式来通知更新。

【技术特征摘要】
1.一种分布式缓存同步方法,其特征在于,该方法包括:分析日志文件数据;基于分析结果确定同步更新方式;以及基于所确定的同步更新方式来通知更新。2.根据权利要求1所述的方法,其特征在于,所述日志文件数据包括缓存中存储的数据对象的标识、操作方法名、参数序列大小、操作类型、操作执行的开始时间、操作执行的结束时间和操作返回值大小。3.根据权利要求1所述的方法,其特征在于,所述基于分析结果确定同步更新方式包括:在所述分析结果为缓存中存储的数据对象的历史查询次数与历史更新次数的比率小于第一阈值而且所述缓存中存储的数据对象的更新操作所消耗的时间小于第二阈值时,确定所述同步更新方式为只传播更新的数据;在所述分析结果为所述缓存中存储的数据对象的历史查询次数与历史更新次数的比率大于等于所述第一阈值而且所述缓存中存储的数据对象的更新操作所消耗的时间大于等于所述第二阈值时,确定所述同步更新方式为只传播更新通知;以及在所述分析结果为所述缓存中存储的数据对象的历史查询次数与历史更新次数的比率小于所述第一阈值而且所述缓存中存储的数据对象的更新操作所消耗的时间大于等于所述第二阈值或者所述缓存中存储的数据对象的历史查询次数与历史更新次数的比率大于等于所述第一阈值而且所述缓存中存储的数据对象的更新操作所消耗的时间小于所述第二阈值时,确定所述同步更新方式为只传播更新操作的方法名和参数序列。4.一种分布式缓存同步装置,其特征在于,该装置包括:分析模块,用于分析日志文件数据;确定模块,用于基于分析结果确定同步更新方式;以及通知模块,用于基于所确定的同步更新方式来通知更新。5.根据权利要求4所述的装置,其特征在于,所述日志文件数据包括缓存中存储的数据对象的标识、操作方法名、参数序列大小、操作类型、操作执行的开始时间、操作执行的结束时间和操作返回值大小。6.根据权利要求4所述的装置,其特征在于,所述确定模块基于分析结果确定同步更新方式包括...

【专利技术属性】
技术研发人员:谢新强张德阳张霞
申请(专利权)人:东软集团股份有限公司
类型:发明
国别省市:辽宁;21

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

1