The invention discloses a method, device, server and storage medium for updating local cached data. The method includes: obtaining a local cached data update request of the client to be updated, which includes data identification and data version; judging the same data identification if the service data version of the same data identification is higher than that of the data version in the update request. Whether the service data is available; if the service data with the same data identification is not available, a local cache data sharing request is sent to other clients, which includes data identification and data version; if the local cache data coming from other clients is not less than the data version in the shared request, the acquired local cache data is sent to be updated. Client. Through the above technical scheme, the local cached data can be exchanged with other clients in the cluster, and the local cached data can be updated to reduce the load of the local cached data update process.
【技术实现步骤摘要】
一种本地缓存数据的更新方法、装置、服务器及存储介质
本专利技术实施例涉及计算机
,尤其涉及一种本地缓存数据的更新方法、装置、服务器及存储介质。
技术介绍
随着计算机技术和数据库技术的飞速发展,业务需求逐渐多样化,互联网产品的很多新增功能或组件都是只对部分用户开放,以达到测试和改善的目的,那么开发者需要利用缓存技术,在数据库与各客户端节点之间进行大量灰度发布相关服务数据的更新和交互。缓存是数据交互的缓冲区,客户端节点通过缓存可与服务器进行快速地数据更新和交互。目前,海量的用户数据与服务请求使得本地缓存数据的更新具有较强的局限性。一方面,其更新过程依赖于网络性能,当网络拥堵、网络抖动时,易导致数据源的服务数据不可用或获取数据严重超时等问题,使得本地缓存数据无法与最新的服务数据保持一致;另一方面,当负载压力过大、负载服务请求频率过高时,会对服务系统中所有依赖于Redis的服务和应用都造成过载的影响,并且扩容成本很高,在扩容期间无法提供服务,对数据库造成极大的访问压力。
技术实现思路
本专利技术提供了一种本地缓存数据的更新方法、装置、服务器及存储介质,以实现通过与集群中的其他客户端进行本地缓存数据的交互,对本地缓存数据进行更新,降低本地缓存数据更新过程中的负载压力。第一方面,本专利技术实施例提供了一种本地缓存数据的更新方法,包括:获取待更新客户端的本地缓存数据更新请求,所述更新请求中包括数据标识和数据版本;若相同数据标识的服务数据版本比所述更新请求中的数据版本高,则判断相同数据标识的服务数据是否可用;如果相同数据标识的服务数据不可用,则向其他客户端发送本地缓存数 ...
【技术保护点】
1.一种本地缓存数据的更新方法,其特征在于,包括:获取待更新客户端的本地缓存数据更新请求,所述更新请求中包括数据标识和数据版本;若相同数据标识的服务数据版本比所述更新请求中的数据版本高,则判断相同数据标识的服务数据是否可用;如果相同数据标识的服务数据不可用,则向其他客户端发送本地缓存数据共享请求,所述共享请求中包括数据标识和数据版本;获取到来自其他客户端的不低于所述共享请求中的数据版本的本地缓存数据,则将获取的本地缓存数据发送给待更新客户端。
【技术特征摘要】
1.一种本地缓存数据的更新方法,其特征在于,包括:获取待更新客户端的本地缓存数据更新请求,所述更新请求中包括数据标识和数据版本;若相同数据标识的服务数据版本比所述更新请求中的数据版本高,则判断相同数据标识的服务数据是否可用;如果相同数据标识的服务数据不可用,则向其他客户端发送本地缓存数据共享请求,所述共享请求中包括数据标识和数据版本;获取到来自其他客户端的不低于所述共享请求中的数据版本的本地缓存数据,则将获取的本地缓存数据发送给待更新客户端。2.根据权利要求1所述的方法,其特征在于,还包括:对所述待更新客户端的本地磁盘数据进行检测;所述待更新客户端的本地磁盘中存储有相同数据标识的服务数据,则将本地磁盘中相同数据标识的服务数据加载至所述待更新客户端,作为所述待更新客户端的本地缓存数据。3.根据权利要求1所述的方法,其特征在于,在所述将获取的本地缓存数据发送给待更新客户端之后,还包括:将所述待更新客户端的本地缓存数据设置为待校验状态;定时校验所述待更新客户端的本地缓存数据的数据版本与所述相同数据标识的服务数据的数据版本是否一致;如果一致,将待更新客户端的本地缓存数据修改为校验通过状态。4.根据权利要求1所述的方法,其特征在于,还包括:通过Zookeeper的预设节点对所述相同数据标识的服务数据进行修改;通过Zookeeper向所述待更新客户端发送服务数据的修改通知;所述待更新客户端从数据库或其他客户端的分布式本地缓存数据中拉取修改后的服务数据。5.根据权利要求1所述的方法,其特征在于,还包括:向其他客户端发送本地缓存数据共享请求的次数超过预设次数仍未完成更新,则将所述...
【专利技术属性】
技术研发人员:黄芳健,
申请(专利权)人:深圳市盟天科技有限公司,
类型:发明
国别省市:广东,44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。