[发明专利]遍历用户在线状态数据的方法有效
| 申请号: | 201810828066.8 | 申请日: | 2018-07-25 |
| 公开(公告)号: | CN109086049B | 公开(公告)日: | 2021-11-02 |
| 发明(设计)人: | 杨爽 | 申请(专利权)人: | 北京金和网络股份有限公司 |
| 主分类号: | G06F8/41 | 分类号: | G06F8/41;G06F8/70 |
| 代理公司: | 北京远大卓悦知识产权代理有限公司 11369 | 代理人: | 史霞 |
| 地址: | 100085 北京市海淀区*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 遍历 用户 在线 状态 数据 方法 | ||
本发明公开了一种遍历用户在线状态数据的方法,本方法中采用将缓存在多重嵌套循环结构中的用户状态数据利用一个个单一循环进行遍历,其中,每个单一循环用loop函数、condition函数和callback函数定义。本方法中通过三个函数组成的单一循环进行用户状态数据的遍历,将整个遍历过程变得十分简洁明了,降低多重嵌套循环代码维护开发工作的难度,很大提升开发和维护复杂嵌套遍历用户状态数据逻辑工作的效率。
技术领域
本发明涉及用户在线状态数据处理领域。更具体地说,本发明涉及一种遍历用户在线状态数据的方法。
背景技术
在服务器端,例如消息推送过程,经常会遇到向所有用户中某些满足匹配条件的用户推送消息的情况,这时就不可避免的需要遍历查找用户在线状态数据。目前很多后台服务端都是采用高速缓存来存储用户状态数据,高速缓存一般都是采用键值对(key,value)格式作为存储结构,每个键值对存储的一般为单一一种类型的用户状态数据,复杂一点的情况时value也可能会是一组数据的集合,或者遇到不确定主键key的情况,这里就需要遍历这些用户状态数据。并且,很多时候(例如,推送消息时),需要同时使用多种用户状态数据,这就需要使用多重嵌套循环的方式来实现用户状态数据的遍历,进而找出目标用户。
多重嵌套循环在大多数语言中一般都是使用for、while等用于循环处理的语句,当循环代码行数较多而且存在各种循环嵌套时,存在着复杂的循环体起始与终止等对应关系,代码的易读性不是很好,随着逻辑日益复杂,服务和代码的后期维护工作的难度会陡增。
为了解决这些缺陷,人们往往是采用了尽可能降低多重嵌套循环的循环层数以及减少循环内代码行数,一般做法是通过封装遍历时的循环体内部的代码来减少行数和循环层数,但是,剩下的循环代码往往在后期维护中不会经常更改升级,而往往循环体内部代码因各种需求,需要不断更新完善,就存在修改未封装的循环控制逻辑代码和修改封装循环体内部代码的2种可能,我们还是受到复杂的循环嵌套结构的复杂对应关系的困扰,遍历用户状态数据代码维护难度依旧存在,因此,我们在此基础上,设计了一种遍历用户在线状态数据的方法。
发明内容
本发明的一个目的是解决至少上述问题,并提供至少后面将说明的优点。
本发明的一个目的是提供一种遍历用户在线状态数据的方法,本方法中采用将缓存在多重嵌套循环结构中的用户状态数据利用一个个单一循环进行遍历,其中,每个单一循环用loop函数、condition函数和callback函数定义。本方法中通过三个函数组成的单一循环进行用户状态数据的遍历,将整个遍历过程变得十分简洁明了,降低多重嵌套循环代码维护开发工作的难度,很大提升开发和维护复杂嵌套遍历用户状态数据逻辑工作的效率。
为了实现根据本发明的目的和其它优点,提供了一种遍历用户在线状态数据的方法,包括:
步骤一、利用多个数据属性,将缓存的用户状态数据转化为多重嵌套循环结构;
步骤二、将多重嵌套循环结构中的每个单一循环用loop函数、condition函数和callback函数定义;
步骤三、通过依次调用每个单一循环的loop函数、condition函数和callback函数来遍历用户状态数据。
优选的是,所述的遍历用户在线状态数据的方法,每个单一循环中的condition函数和callback函数界定了用户状态数据的属性。
优选的是,所述的遍历用户在线状态数据的方法,loop函数对每个单一循环中loop函数、condition函数和callback函数的调用与否和调用顺序进行控制。
优选的是,所述的遍历用户在线状态数据的方法,condition函数依据其内设定的多个条件关系对每个单一循环中的用户状态数据进行筛选。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京金和网络股份有限公司,未经北京金和网络股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810828066.8/2.html,转载请声明来源钻瓜专利网。





