一种数据缓存同步方法、服务器和客户端的制作方法_5

文档序号:9547277阅读:来源:国知局
确定所述目标客户端需要更新的数据; 根据所述目标客户端对应的至少一种缓存规则,将确定出的目标客户端需要更新的数 据发送给所述目标客户端。2. 根据权利要求1所述的方法,其特征在于,所述在所述服务器中保存每一个客户端 对应的缓存规则,包括: 定义取数类型、缓存同步策略、客户端存储方式和缓存依赖中的任意一种或多种; 将所述定义封装为缓存元数据; 将所述缓存元数据加载到服务器。3. 根据权利要求1所述的方法,其特征在于,所述确定所述目标客户端需要更新的数 据,包括: 确定缓存数据的版本; 将所述缓存数据版本与服务器中对应的数据版本进行对比; 当所述缓存数据版本与服务器中对应的数据版本不同时,确定所述服务器中对应的数 据版本对应的数据为所述目标客户端需要更新的数据。4. 根据权利要求2所述的方法,其特征在于, 所述确定所述目标客户端需要更新的数据,包括: 确定所述目标客户端的取数类型、缓存依赖中的第一权限版本和第一缓存依赖项版 本; 根据所述目标客户端的取数类型,实例化对应的同步提供程序; 控制所述同步提供程序获取服务器中对应的第二权限版本和第二缓存依赖项版本; 判断所述第一权限版本和第一缓存依赖项版本分别与所述对应的第二权限版本和所 述第二缓存依赖项版本是否完全相同,如果是,则确定所述目标客户端的缓存数据的版本, 并根据所述目标客户端的缓存数据的版本,确定所述目标客户端需要更新的数据;否则,发 送所述对应的第二权限版本和所述第二缓存依赖项版本对应的数据给所述目标客户端; 和/或, 所述根据所述目标客户端对应的至少一种缓存规则,将确定出的目标客户端需要更新 的数据发送给所述目标客户端,包括: 根据所述定义的缓存同步策略,设置缓存数据更新标志为All,发送所述缓存数据对应 的所有数据给所述目标客户端; 或者, 根据所述定义的缓存同步策略,确定所述缓存数据中各个缓存字段的时间戳;设置缓 存数据更新标志为Increment,将所述对应的数据字段的时间戳与所述缓存数据中各个缓 存字段的时间戳进行对比,确定所述对应的数据字段的时间戳增量; 利用所述时间戳增量,确定更新数据字段和删除数据字段,并提供所述更新数据字段 和删除数据字段给所述目标客户端。5. -种数据缓存同步方法,其特征在于,应用于客户端,获取并加载至少一种缓存规 贝1J;还包括: 根据所述加载的至少一种缓存规则,获取服务器发送的需要更新的数据; 利用所述获取到的需要更新的数据,更新所述客户端中的缓存数据。6. 根据权利要求5所述的方法,其特征在于, 进一步包括:确定缓存规则的编号与所述缓存规则的映射关系; 所述获取至少一种缓存规则,包括:根据所述映射关系,提供至少一种缓存规则的编号 给所述服务器,并获取所述服务器发送的与所述至少一种缓存规则的编号对应的所述至少 一种缓存规则; 和/或, 在所述获取并加载至少一种缓存规则之后,在所述获取服务器发送的需要更新的数据 之前,进一步包括: 确定所述缓存数据的版本以及所述至少一种缓存规则中的缓存依赖中的第一权限版 本和第一缓存依赖项版本中的任意一个或多个; 将所述缓存数据的版本、所述缓存依赖中的第一权限版本和第一缓存依赖项版本和中 的任意一个或多个发送给所述服务器; 所述获取服务器发送的需要更新的数据,包括:当所述服务器确定出缓存数据的版本、 所述缓存依赖中的第一权限版本和第一缓存依赖项版本中的任意一个与所述服务器中对 应的版本不同时,获取服务器发送的需要更新的数据; 和/或, 在所述获取并加载至少一种缓存规则之后,在所述获取服务器发送的需要更新的数据 之前,进一步包括: 判断所述至少一种缓存规则是否已启用,如果是,则根据所述至少一种缓存规则中的 存储定义和数据类型,在本地数据库构建缓存数据表,并将缓存数据存储到所述缓存数据 表中; 和/或, 在所述获取服务器发送的需要更新的数据之后,在所述更新所述客户端中的缓存数据 之前,进一步包括: 接收所述服务器发送的所述缓存数据的更新标志; 判断所述更新标志是All,None或者Increment; 所述更新所述缓存数据,包括:当所述缓存数据的更新标志为All时,清空缓存数据, 并插入所述服务器发送的需要更新的数据;当所述当前缓存数据的更新标志为None时,不 修改所述缓存数据;当所述缓存数据的更新标志为Increment时,则删除需要更新的缓存 字段,并在所述删除的需要更新的缓存字段处,插入对应的所述服务器发送的需要更新的 数据。7. -种服务器,其特征在于,包括: 缓存组件单元,用于保存外设的每一个客户端对应的缓存规则; 第一发送单元,用于确定外设的目标客户端,并将所述缓存组件单元保存的所述外设 的目标客户端对应的至少一种缓存规则发送给所述外设的目标客户端; 确定单元,用于确定所述外设的目标客户端需要更新的数据; 第二发送单元,用于根据所述第一发送单元发送的所述外设的目标客户端对应的至少 一种缓存规则,将所述确定单元确定出的外设的目标客户端需要更新的数据发送给所述外 设的目标客户端。8. 根据权利要求7所述的服务器,其特征在于, 所述缓存组件单元,用于定义取数类型、缓存同步策略、客户端存储方式和缓存依赖中 的任意一种或多种;将所述定义封装为缓存元数据;并将所述缓存元数据加载到服务器; 和/或, 所述确定单元,用于确定缓存数据的版本;将所述缓存数据版本与服务器中对应的数 据版本进行对比;当所述缓存数据版本与服务器中对应的数据版本不同时,确定所述服务 器中对应的数据版本对应的数据为所述目标客户端需要更新的数据; 和/或, 所述确定单元,用于确定所述目标客户端的取数类型、缓存依赖中的第一权限版本和 第一缓存依赖项版本;根据所述目标客户端的取数类型,实例化对应的同步提供程序;控 制所述同步提供程序获取服务器中对应的第二权限版本和第二缓存依赖项版本;判断所述 第一权限版本和第一缓存依赖项版本分别与所述对应的第二权限版本和所述第二缓存依 赖项版本是否相同,如果是,则确定所述目标客户端的缓存数据的版本,并根据所述目标客 户端的缓存数据的版本,确定所述目标客户端需要更新的数据;否则,发送所述对应的第二 权限版本和所述第二缓存依赖项版本对应的数据给所述目标客户端; 和/或, 所述第二发送单元,用于根据所述定义的缓存同步策略,设置缓存数据更新标志 为All,发送缓存数据对应的所有数据给所述外设的目标客户端;或者,根据所述定义的 缓存同步策略,确定所述缓存数据中各个缓存字段的时间戳;设置缓存数据更新标志为 Increment,将所述对应的数据字段的时间戳与所述缓存数据中各个缓存字段的时间戳进 行对比,确定所述对应的数据字段的时间戳增量;利用所述时间戳增量,提供更新数据字段 和删除数据字段给所述外设的目标客户端。9. 一种客户端,其特征在于,包括: 加载单元,用于获取并加载至少一种缓存规则; 获取单元,用于根据所述加载单元加载的至少一种缓存规则,获取外设的服务器发送 的需要更新的数据; 更新单元,用于利用所述获取单元获取到的需要更新的数据,更新所述客户端中的缓 存数据。10. 根据权利要求9所述的客户端,其特征在于, 进一步包括:第一确定单元,其中, 所述第一确定单元,用于确定缓存规则的编号与所述缓存规则的映射关系; 所述加载单元,用于根据所述第一确定单元确定的映射关系,提供至少一种缓存规则 的编号给所述外设的服务器,并获取所述外设的服务器发送的与所述至少一种缓存规则的 编号对应的所述至少一种缓存规则; 和/或, 进一步包括:第二确定单元,其中, 所述第二确定单元,用于确定所述缓存数据的版本以及所述加载单元加载的至少一种 缓存规则中的缓存依赖中的第一权限版本和第一缓存依赖项版本中的任意一个或多个;将 所述缓存数据的版本、所述缓存依赖中的第一权限版本和第一缓存依赖项版本中的任意一 个或多个发送给所述外设的服务器; 所述获取单元,用于当所述外设的服务器确定出缓存数据的版本、所述缓存依赖中的 第一权限版本和第一缓存依赖项版本和中的任意一个与所述服务器中对应的版本不同时, 获取所述外设的服务器发送的需要更新的数据; 和/或, 进一步包括:第一判断单元和构建单元,其中, 所述第一判断单元,用于判断所述加载单元加载的至少一种缓存规则是否已启用,如 果是,触发所述构建单元; 所述构建单元,用于接收到所述第一判断单元的触发时,根据所述至少一种缓存规则 中的存储定义和数据类型,在本地数据库构建缓存数据表,并将缓存数据存储到所述缓存 数据表中; 和/或, 进一步包括:第二判断单元,其中, 所述第二判断单元,用于接收所述外设的服务器发送的所述缓存数据的更新标志;判 断所述更新标志是All,None或者Increment; 所述更新单元,用于当所述第二判断单元判断出缓存数据的更新标志为All时,清空 缓存数据,并插入所述服务器发送的需要更新的数据;当所述第二判断单元判断出所述缓 存数据的更新标志为None时,不修改所述缓存数据;当所述第二判断单元判断出所述缓存 数据的更新标志为Increment时,则删除需要更新的缓存字段,并在所述删除的需要更新 的缓存字段处,插入对应的所述服务器发送的需要更新的数据。
【专利摘要】本发明提供一种数据缓存同步方法、服务器和客户端,该数据缓存同步方法应用于服务器中,在所述服务器中保存每一个客户端对应的缓存规则;确定目标客户端,并将所述目标客户端对应的至少一种缓存规则发送给所述目标客户端;确定所述目标客户端需要更新的数据;根据所述目标客户端对应的至少一种缓存规则,将确定出的目标客户端需要更新的数据发送给所述目标客户端,从而提高客户端的缓存效率。
【IPC分类】G06F17/30
【公开号】CN105302895
【申请号】CN201510688001
【发明人】王延东, 孙立新, 周祥国
【申请人】浪潮通用软件有限公司
【公开日】2016年2月3日
【申请日】2015年10月21日
当前第5页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1