榜单维护方法、装置及服务器节点与流程
发布日期:2024-09-02 浏览次数: 专利申请、商标注册、软件著作权、资质办理快速响应热线:4006-054-001 微信:15998557370
申请号: | 申请日: | ||
公开(公告)号: | 公开(公告)日: | ||
发明(设计)人: | 申请(专利权)人: | ||
主分类号: | 分类号: | ||
代理公司: | 代理人: | ||
地址: | 国省代码: | ||
权利要求书: | 说明书: | ||
微信咨询: | 添加微信:543646或【点此在线咨询】 | 文件下载: | 【点此下载】请正确填写本页网址和接收邮箱 |
摘要: | 本发明涉及游戏领域,具体而言,涉及一种榜单维护方法、装置及服务器节点。、在游戏领域,各种排行榜自上到下记录了前n个(例如,前个)排名分数靠前的上榜对象。通常地,现有技术将排行榜数据存储在redis数据库,即redis数据库定时从游戏数据库中获取排行榜数据进行统一维护,redis数据库在收到... | ||
相关服务: | 软件产品登记测试全国受理 软件著作权666元代写全部资料全国受理 实用新型专利1875代写全部资料全国受理 | ||
本发明涉及游戏领域,具体而言,涉及一种榜单维护方法、装置及服务器节点。背景技术:1、在游戏领域,各种排行榜自上到下记录了前n个(例如,前100个)排名分数靠前的上榜对象。通常地,现有技术将排行榜数据存储在redis数据库,即redis数据库定时从游戏数据库中获取排行榜数据进行统一维护,redis数据库在收到游戏服务器转发的排行榜请求时,查询对应的排行榜数据,并通过游戏服务器返回给用户终端。所以,redis数据库用于维护排行榜数据会涉及频繁的数据更新和读取。2、而redis数据库通常是redis服务器,由于redis服务器的内存是有限的,频繁的数据更新和读取会影响redis服务器的性能,从而可能导致排行榜数据崩溃。技术实现思路1、本发明的目的在于提供一种榜单维护方法、装置及服务器节点,以改善现有技术存在的问题。2、本发明的实施例可以这样实现:3、第一方面,本发明提供一种榜单维护方法,应用于榜单缓存系统的服务器节点;所述榜单缓存系统包括多个一级节点以及全服的每个游戏服务器所连接的二级节点,每个所述一级节点与至少一个二级节点通信连接;所述服务器节点为任一所述一级节点或者任一所述二级节点;所述服务器节点维护有公共缓存池以及多个榜单各自对应的时间池以及参数池,所述时间池和所述参数池分别用于存储对应榜单中每个上榜作品的更新时间和榜单参数;所述公共缓存池用于存储每个榜单中的上榜作品的全部数据;所述方法包括:4、针对每个榜单,每隔预设的更新周期向上级节点请求当前更新周期内所述榜单中每个已变上榜作品的榜单参数和更新时间;其中,当所述服务器节点为任一所述一级节点时,所述上级节点为每个所述一级节点连接的作品数据库;当所述服务器节点为任一所述二级节点时,所述上级节点为所述二级节点连接的一级节点;5、基于每个所述已变上榜作品的榜单参数和更新时间,更新所述榜单对应的时间池和参数池以及所述公共缓存池。6、可选的,所述每隔预设的更新周期向上级节点请求当前更新周期内所述榜单中每个已变上榜作品的榜单参数和更新时间的步骤,包括:7、在所述当前更新周期结束的同步时间节点,获取所述榜单的榜单容量以及前一更新周期的同步时间节点;8、基于所述榜单容量以及所述前一更新周期的同步时间节点,生成查询请求发送至所述上级节点;所述查询请求用于请求所述当前更新周期内所述榜单的每个已变上榜作品的榜单参数和更新时间;所述已变上榜作品为所述榜单的全部上榜作品中,所述更新时间晚于所述前一更新周期的同步时间节点的上榜作品;9、接收所述上级节点返回的所述当前更新周期内所述榜单的每个已变上榜作品的榜单参数和更新时间。10、可选的,所述上榜作品的全部数据包括可变部分数据和不可变部分数据;所述基于每个所述已变上榜作品的榜单参数和更新时间,更新所述榜单对应的时间池和参数池以及所述公共缓存池的步骤,包括:11、针对每个所述已变上榜作品,将所述已变上榜作品的榜单参数和更新时间分别更新至所述榜单对应的参数池和时间池;12、判断所述公共缓存池是否存在所述已变上榜作品;13、若所述公共缓存池存在所述已变上榜作品,则向所述上级节点请求所述已变上榜作品的最新可变部分数据,并将所述最新可变部分数据更新至所述公共缓存池;14、若所述公共缓存池不存在所述已变上榜作品,则直接向所述上级节点请求所述已变上榜作品的全部数据,以将所述已变上榜作品的全部数据添加至所述公共缓存池。15、可选的,所述公共缓存池还维护有每个上榜作品的在榜榜单个数;当所述已变上榜作品为所述当前更新周期内的新上榜作品时,在所述将所述最新可变部分数据更新至所述公共缓存池的步骤之后,还包括:将所述公共缓存池中所述已变上榜作品的在榜榜单个数加1;16、或者,在所述将所述已变上榜作品的全部数据添加至所述公共缓存池的步骤之后,还包括:将所述公共缓存池中所述已变上榜作品的在榜榜单个数置1。17、可选的,所述方法还包括:18、当收到下级节点发送的查询请求时,解析所述查询请求,确定待查询的目标榜单及其对应的榜单容量;当所述服务器节点为任一所述一级节点时,所述下级节点为所述一级节点连接的任一二级节点;当所述服务器节点为任一所述二级节点时,所述下级节点为所述二级节点连接的游戏服务器;19、基于所述目标榜单的榜单容量,对所述目标榜单所对应的目标参数池和目标时间池进行过滤,以使所述目标榜单中的上榜作品数量等于所述榜单容量;20、从所述目标榜单所对应的目标参数池和目标时间池以及所述公共缓存池中查找所述查询请求的响应数据,并将所述响应数据返回所述下级节点。21、可选的,所述方法还包括:22、当任一目标参数池的剩余空间为0时,获取所述目标参数池所对应目标榜单的榜单容量;23、基于所述目标榜单的榜单容量,对所述目标榜单所对应的目标参数池和目标时间池进行过滤,以使所述目标榜单中的上榜作品数量等于所述榜单容量。24、可选的,每个所述参数池包括对应榜单的每个上榜作品的作品id和榜单参数构成的键值对;每个所述时间池包括对应榜单的每个上榜作品的作品id和更新时间构成的键值对;25、所述基于所述目标榜单的榜单容量,对所述目标榜单所对应的目标参数池和目标时间池进行过滤,以使所述目标榜单中的上榜作品数量等于所述榜单容量的步骤,包括:26、按照所述榜单参数从大到小的顺序对所述目标参数池中的所有键值对进行排序;27、获取所述目标参数池中排在第n个键值对之后的每个掉榜作品的作品id;n代表所述目标榜单的榜单容量;28、基于每个所述掉榜作品的作品id,分别删除所述目标参数池和所述目标时间池中每个所述掉榜作品对应的键值对,以使所述目标榜单中的上榜作品数量等于所述榜单容量。29、可选的,所述公共缓存池还维护有每个上榜作品的在榜榜单个数;30、在所述基于每个所述掉榜作品的作品id,分别删除所述目标参数池和所述目标时间池中每个所述掉榜作品对应的键值对,以使所述目标榜单中的上榜作品数量等于所述榜单容量的步骤之后,还包括:31、基于每个所述掉榜作品的作品id,从所述公共缓存池中查询每个所述掉榜作品的在榜榜单个数;32、从所述公共缓存池中删除所述在榜榜单个数为1的掉榜作品的全部数据。33、第二方面,本发明提供一种榜单维护装置,应用于榜单缓存系统的服务器节点;所述榜单缓存系统包括多个一级节点以及全服的每个游戏服务器所连接的二级节点,每个所述一级节点与至少一个二级节点通信连接;所述服务器节点为任一所述一级节点或者任一所述二级节点;所述服务器节点维护有公共缓存池以及多个榜单各自对应的时间池以及参数池,所述时间池和所述参数池分别用于存储对应榜单中每个上榜作品的更新时间和榜单参数;所述公共缓存池用于存储每个榜单中的上榜作品的全部数据;所述装置包括:34、定时请求模块,用于针对每个榜单,每隔预设的更新周期向上级节点请求当前更新周期内所述榜单中每个已变上榜作品的榜单参数和更新时间;其中,当所述服务器节点为任一所述一级节点时,所述上级节点为每个所述一级节点连接的作品数据库;当所述服务器节点为任一所述二级节点时,所述上级节点为所述二级节点连接的一级节点;35、更新模块,用于基于每个所述已变上榜作品的榜单参数和更新时间,更新所述榜单对应的时间池和参数池以及所述公共缓存池。36、第三方面,本发明提供一种服务器节点,包括:存储器和处理器,所述存储器存储有软件程序,当所述服务器节点运行时所述处理器执行所述软件程序以实现如前述第一方面所述的榜单维护方法。37、第四方面,本发明提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如前述第一方面所述的榜单维护方法。38、与现有技术相比,本发明实施例提供了一种榜单维护方法、装置及服务器节点,榜单缓存系统包括多个一级节点以及全服的每个游戏服务器所连接的二级节点,每个所述一级节点与至少一个二级节点通信连接。在榜单缓存系统中,上层的每个一级节点定时从作品数据库中获取各个榜单中的每个已变上榜作品的更新时间和榜单参数,以更新各个榜单对应的时间池和参数池以公共缓存池;同样地,下层的每个二级节点定时从上连的一级节点获取各个榜单中的每个已变上榜作品的更新时间和榜单参数,以更新各个榜单对应的时间池和参数池以公共缓存池,从而使得玩家用户能够通过所在游戏服务器连接的二级节点中直接获取各榜单。相较于现有技术,本发明设置的双层架构的榜单缓存系统以及其内部的榜单维护逻辑,能够将用户请求引起的访问压力有效地分散到各个二级节点,保证了整个榜单维护系统的稳定性,进而保证了各个榜单的稳定性。
- 上一篇:一种麻将机外框组件的制作方法
- 下一篇:一种可消气包装的机贴足球的制作方法