[发明专利]一种基于缓存的数据分发方法和电子设备有效
申请号: | 202010302142.9 | 申请日: | 2020-04-16 |
公开(公告)号: | CN111522879B | 公开(公告)日: | 2023-09-29 |
发明(设计)人: | 刘克义;王彪 | 申请(专利权)人: | 北京雷石天地电子技术有限公司 |
主分类号: | G06F16/27 | 分类号: | G06F16/27;G06F16/2455;H04L67/60;H04L67/5682;G06Q30/0241 |
代理公司: | 深圳壹舟知识产权代理事务所(普通合伙) 44331 | 代理人: | 寇闯 |
地址: | 100000 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 缓存 数据 分发 方法 电子设备 | ||
本发明公开了一种基于缓存的数据分发方法和电子设备,包括:构建本地缓存和Redis缓存;基于本地缓存和Redis缓存进行数据分发,其中,当第一子节点接收到外设的数据请求但本地缓存不包含请求数据时,第一子节点将向上级节点转发数据请求,上级节点接收到第一子节点转发的数据请求后读取数据请求,并从本地缓存读取请求数据并按照异步分发方法实现向各子节点的数据分发。基于构建的本地缓存和Redis缓存,不仅能实现响应第一子节点数据请求实现由上级节点向第一子节点的数据分发,进一步实现了上级节点数据变化时,向所有子节点分发数据,进而实现双向交互。
技术领域
本申请涉及数据处理领域,且更为具体地,涉及一种基于缓存的数据分发方法和电子设备。
背景技术
目前,当KTV终端向KTV子节点服务器发送广告请求时,当前子节点服务器缓存中有请求时,则返回请求数据;
当前子节点服务器缓存中没有请求的数据时,一方面当前子节点服务器先响应广告请求,返回空的请求数据;另一方面,当前子节点服务器向上级服务器发送广告请求,并将得到的请求数据放入到缓存中。KTV终端再次发送所述的广告请求时,当前子节点服务器直接将缓存中数据返回给KTV终端。
这样,上级服务器只更新了当前子节点服务器,而与上级服务器相连接的其它子节点服务器并没有得到同时更新。上述数据更新方向是单向的。
并且,当上级服务器数据变化时,不主动更新下级各子节点服务器的缓存数据,未实现上级服务器和节点服务器间的双向数据更新。
因此,需要一种改进的数据分发方法。
发明内容
本发明的目的在于针对上述现有技术中的缺陷和不足,提供了一种基于缓存的数据分发方法,基于构建的本地缓存和Redis(Remote Dictionary Server,非常流行的完全开源的key-value型非关系型数据库)缓存,不仅能实现响应第一子节点数据请求实现由上级节点向第一子节点的数据分发,进一步实现了上级节点数据变化时,向所有子节点分发数据,进而实现双向交互。
根据本发明的一方面,提供了一种基于缓存的数据分发方法,包括:构建本地缓存和Redis缓存;基于本地缓存和Redis缓存进行数据分发,其中,当第一子节点接收到外设的数据请求但本地缓存不包含请求数据时,第一子节点将向上级节点转发数据请求,上级节点接收到第一子节点转发的数据请求后读取数据请求,并从本地缓存读取请求数据并按照异步分发方法实现向各字节点的数据分发。
进一步的,所述的异步分发方法包括,当上级节点缓存不包含请求数据时,上级节点从内存中读取数据,并将数据放入本地缓存,并且向与上级节点相连的所有子节点发送请求数据更新子节点缓存,各子节点将请求数据缓存到各自的本地缓存。
所述的异步分发方法,进一步包括,当上级节点缓存包含请求数据时,获取本地缓存中请求数据的剩余有效时间,当所述的剩余有效时间小于数据的异步更新时间,则将所述缓存中的请求数据返回给第一子节点;之后,上级节点更新本地缓存数据和Redis缓存中的请求数据,并且向与上级节点相连的所有子节点发送请求数据更新子节点缓存,各子节点将请求数据缓存到各自所在的本地缓存。
所述的异步分发方法,进一步包括,当上级节点缓存包含请求数据时,获取本地缓存中请求数据的剩余有效时间,当所述的剩余有效时间大于数据的异步更新时间,则将上级节点缓存中的数据直接发送给第一子节点。
进一步的,所述的构建本地缓存,包括基于go语言,利用go语言提供的go-cache(go语言实现的单机本地缓存的框架)框架构建key-value型(键-值型)存储缓存。
进一步的,所述的上级节点读取数据请求的方法,包括:使用Redis的Pipeline(Redis的管道技术,快速批量执行一组命令)从Redis中读取数据请求。
进一步的,所述的异步更新时间大于Redis缓存热点数据时间。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京雷石天地电子技术有限公司,未经北京雷石天地电子技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010302142.9/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置