CN110523083A - 登录事件的处理方法、装置以及服务端设备 - Google Patents
登录事件的处理方法、装置以及服务端设备 Download PDFInfo
- Publication number
- CN110523083A CN110523083A CN201910839558.1A CN201910839558A CN110523083A CN 110523083 A CN110523083 A CN 110523083A CN 201910839558 A CN201910839558 A CN 201910839558A CN 110523083 A CN110523083 A CN 110523083A
- Authority
- CN
- China
- Prior art keywords
- user
- bit
- bit string
- value
- segment identification
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 10
- 238000000034 method Methods 0.000 claims abstract description 49
- 238000012545 processing Methods 0.000 claims abstract description 16
- 238000003860 storage Methods 0.000 claims abstract description 16
- 230000004044 response Effects 0.000 claims abstract description 14
- 238000012986 modification Methods 0.000 claims description 11
- 230000004048 modification Effects 0.000 claims description 11
- 238000004590 computer program Methods 0.000 claims description 7
- 230000032258 transport Effects 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 7
- 230000000694 effects Effects 0.000 description 6
- 238000004891 communication Methods 0.000 description 4
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- PEDCQBHIVMGVHV-UHFFFAOYSA-N Glycerine Chemical compound OCC(O)CO PEDCQBHIVMGVHV-UHFFFAOYSA-N 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000014759 maintenance of location Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 230000008439 repair process Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 238000012854 evaluation process Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000010992 reflux Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 210000000352 storage cell Anatomy 0.000 description 1
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/70—Game security or game management aspects
- A63F13/79—Game security or game management aspects involving player-related data, e.g. identities, accounts, preferences or play histories
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/131—Protocols for games, networked simulations or virtual reality
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Business, Economics & Management (AREA)
- Computer Security & Cryptography (AREA)
- General Business, Economics & Management (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明提供了一种登录事件的处理方法、装置以及服务端设备,涉及数据处理的技术领域,可以解决记录用户登录状态所需储存空间的资源消耗过大的技术问题。本方法中,预先配置有用于标识用户是否登录的比特串,其中包括多个比特位,每一个已注册的用户对应一个比特位,每一个比特位的初始值均为预设的第一值,用于指示对应比特位的用户未登录,比特串对应有第一时间段标识,用于标识一个单位时间;方法包括:响应在第一时间段标识的单位时间内的第一用户的登录事件,根据第一用户的身份标识确定在比特串中第一用户对应的比特位,并修改第一用户对应的比特位的值为预设的第二值;根据第一时间段标识对应的修改后的比特串,确定用户登录信息。
Description
技术领域
本发明涉及数据处理技术领域,尤其是涉及一种登录事件的处理方法、装置以及服务端设备。
背景技术
在软件的使用过程中,某些软件需要经常统计用户在一段时间内登录本软件的状态,以便于为软件中各方面的设置安排提供具有参考性的指标。例如,在游戏的开发过程中,经常需要统计用户每天登录游戏的状态,以便于为游戏的评估过程提供具有参考性的指标。
但是,在统计登录状态的过程中,需要储存登录过的用户的用户名来实现登录状态的记录,对于较多用户在多个时间段的登录状态,需要较大的内存空间。随着使用软件人数的不断增多,在对大量的用户进行长时间统计时,便会占用更大的内存空间,导致储存空间的资源消耗过大。
发明内容
本发明的目的在于提供一种登录事件的处理方法、装置以及服务端设备,以解决记录用户登录状态所需储存空间的资源消耗过大的技术问题。
本发明提供的一种登录事件的处理方法,所述方法应用于服务端设备,所述服务端设备上预先配置有用于标识用户是否登录的比特串,所述比特串包括多个比特位,每一个已注册的用户对应一个比特位,所述比特串中每一个比特位的初始值均为预设的第一值,所述第一值用于指示对应比特位的用户未登录,所述比特串对应有第一时间段标识,所述第一时间段标识用于标识一个单位时间;所述方法包括:
响应在所述第一时间段标识的单位时间内的第一用户的登录事件,根据所述第一用户的身份标识确定在所述比特串中所述第一用户对应的比特位,并修改所述第一用户对应的比特位的值为预设的第二值;
根据所述第一时间段标识对应的修改后的所述比特串,确定用户登录信息。
进一步的,响应在所述第一时间段标识的单位时间内的第一用户的登录事件,根据所述第一用户的身份标识确定在所述比特串中所述第一用户对应的比特位,并修改所述第一用户对应的比特位的值为预设的第二值的步骤,包括:
在所述第一时间段标识的单位时间内,响应的第一用户的登录事件,根据所述第一用户的身份标识确定在所述比特串中所述第一用户对应的比特位;
修改所述第一用户对应的比特位的值为预设的第二值。
进一步的,根据所述第一时间段标识对应的修改后的所述比特串,确定用户登录信息的步骤,包括:
根据所述第一时间段标识的时间结束时的所述比特串,确定所述第一时间段标识的单位时间内的用户登录信息。
进一步的,响应在所述第一时间段标识的单位时间内的第一用户的登录事件,根据所述第一用户的身份标识确定在所述比特串中所述第一用户对应的比特位,并修改所述第一用户对应的比特位的值为预设的第二值的步骤,包括:
响应在所述第一时间段标识的单位时间内的多个第一用户的登录事件;
依次根据每个所述第一用户的身份标识确定在所述比特串中所述第一用户对应的比特位,并修改每个所述第一用户对应的比特位的值为预设的第二值。
进一步的,所述第一用户的身份标识为所述第一用户对应的比特位相对于所述比特串的首位的位偏移,所述第一值为0,所述第二值为1。
进一步的,根据所述第一用户的身份标识确定在所述比特串中所述第一用户对应的比特位,并修改所述第一用户对应的比特位的值为预设的第二值的步骤,包括:
从所述比特串的首位开始,按照所述第一用户的身份标识向后进行偏移,确定第一用户对应的比特位;
将1和所述第一用户对应的比特位对应的当前值,进行或操作,以将所述第一用户对应的比特位的值修改为1。
进一步的,还包括:
响应针对第二用户的身份标识和第一时间段标识的查询请求,从所述比特串的首位开始,按照所述第二用户的身份标识向后进行偏移,确定第二用户对应的比特位;
将1和所述第二用户对应的比特位对应的当前值,进行与操作得到查询结果;
其中,如果所述查询结果为1,所述第二用户在所述第一时间段内登录;如果所述查询结果为0,所述第二用户在所述第一时间段内未登录。
进一步的,根据所述第一时间段标识对应的修改后的所述比特串,确定用户登录信息的步骤,包括:
将第二时间段标识对应的多个修改后的所述比特串进行与操作,得到与所述第二时间段标识对应的第一统计结果;所述第二时间段标识对应多个标识的单位时间连续的第一时间段标识;
根据所述第二时间段标识对应的第一统计结果,确定所述第二时间段标识对应的每个单位时间内均登录的用户登录信息。
进一步的,根据所述第一时间段标识对应的修改后的所述比特串,确定用户登录信息的步骤,包括:
将第三时间段标识对应的多个修改后的所述比特串进行与操作,得到与所述第三时间段标识对应的第二统计结果;所述第三时间段标识对应多个标识的单位时间间隔指定数量个单位时间的第一时间段标识;
根据所述第三时间段标识对应的第二统计结果,确定所述第三时间段标识对应的每个单位时间内均登录的用户登录信息。
进一步的,还包括:
响应第三用户的注册事件,在所述比特串中为所述第三用户分配一个比特位,并将所述第三用户的比特位相对于所述比特串的首位的位偏移作为所述第三用户的身份标识。
进一步的,还包括:
响应第三用户的注册事件,在所述比特串的首位前添加所述第三用户对应的比特位,并将所述第三用户的比特位相对于所述比特串的首位的位偏移作为所述第三用户的身份标识。
进一步的,所述用户为游戏中的角色。
本发明提供的一种登录事件的处理装置,所述装置应用于服务端设备,所述服务端设备上预先配置有用于标识用户是否登录的比特串,所述比特串包括多个比特位,每一个已注册的用户对应一个比特位,所述比特串中每一个比特位的初始值均为预设的第一值,所述第一值用于指示对应比特位的用户未登录,所述比特串对应有第一时间段标识,所述第一时间段标识用于标识一个单位时间;所述装置包括:
修改模块,用于响应在所述第一时间段标识的单位时间内的第一用户的登录事件,根据所述第一用户的身份标识确定在所述比特串中所述第一用户对应的比特位,并修改所述第一用户对应的比特位的值为预设的第二值;
确定模块,用于根据所述第一时间段标识对应的修改后的所述比特串,确定用户登录信息。
本发明提供的一种服务端设备,包括存储器、处理器,所述存储器中存储有可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述的方法的步骤。
本发明提供的一种计算机可读存储介质。所述计算机可读存储介质存储有机器可执行指令,所述计算机可执行指令在被处理器调用和执行时,所述计算机可执行指令促使所述处理器执行上述第一方面所述方法。
本发明实施例带来了以下有益效果:本方案中,由于预先配置有用于标识用户是否登录的且对应有第一时间段标识的比特串,该比特串中还包括多个比特位,其中,比特串中每一个比特位的初始值均为用于指示对应比特位的用户未登录的预设第一值,从而使每一个已注册的用户都能够对应一个比特位,而且,每个时间段标识的时间段都能够对应有一个比特串。再者,通过先在第一时间段标识的单位时间内响应的第一用户的登录事件,根据第一用户的身份标识确定在比特串中第一用户对应的比特位,并修改第一用户对应的比特位的值为预设的第二值,然后再根据修改的比特串,确定第一时间段标识的单位时间内的用户登录信息,因此,在记录多个用户的登录状态时,只需要通过数量与用户数量相同的比特位记录即可,相比于传统的登录状态记录方法,所需的内存开销能够得到大幅的下降,从而解决记录用户登录状态所需储存空间的资源消耗过大的技术问题。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种登录事件的处理方法的流程示意图;
图2为本申请实施例提供的一种比特串的结构示意图;
图3示出了本实施例提供的方法相比于传统的登录状态记录方法所需内存占用的对比图;
图4为本申请实施例提供的一种在比特串之间进行与操作的示意图;
图5为本申请实施例提供的一种登录事件的处理装置的结构示意图;
图6为本申请实施例提供的一种服务端设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合附图对本申请的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例的条目中所提到的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、***、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括其他没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
目前,很多软件需要统计用户在一段时间内的登录状态,以便于为软件中各方面的设置安排提供具有参考性的指标。例如,游戏开发中,统计用户连续多日登录是非常常见的需求,这个统计数据对于评估一个游戏也是一个非常重要的指标参数。
传统方案会记录每天登录的用户,例如,将2019年6月28日的登录状态为已登录的用户记录在一个列表里,该列表的内容如下:
用户登录20190628=[用户名1,用户名2,用户名3,….]。
上述方案最大的问题是内存开销太大,特别是在统计周期比较长时(例如一年),假设用户名是int类型,一个用户名占4个字节,每天1亿用户登录,则记录每天登录的用户需要4Bytes*100000000=400M,一年就需要400*365=146G空间。
基于此,本申请实施例提供的一种登录事件的处理方法、装置以及服务端设备,可以解决现有技术中存在的记录用户登录状态所需储存空间的资源消耗过大的技术问题。
下面结合附图对本发明实施例进行进一步地介绍。
图1为本申请实施例提供的一种登录事件的处理方法的流程示意图。该方法应用于服务端设备,该服务端设备上预先配置有用于标识用户是否登录的比特串,比特串包括多个比特位,每一个已注册的用户对应一个比特位,比特串中每一个比特位的初始值均为预设的第一值,第一值用于指示对应比特位的用户未登录,比特串对应有第一时间段标识,该第一时间段标识用于标识一个单位时间。如图1所示,该方法包括:
S110:响应在第一时间段标识的单位时间内的第一用户的登录事件,根据第一用户的身份标识确定在比特串中第一用户对应的比特位,并修改第一用户对应的比特位的值为预设的第二值。
该服务端设备是相对客户端设备而言的,例如,该服务端设备可以指采用C/S或B/S架构的服务端设备。
如图2所示,该比特串为包括多个数值的串,该数值也可以称为字符,该比特串也可以称为字符串。其中,比特位(bit)是计算机最小的存储单位,每个比特位对应一个数值,该数据可以为第一值或第二值。作为一个示例,第一值可以为0,第二值可以为1,作为另一个示例,第一值可以为1,第二值可以为0。该比特串可以对应有文件名,该文件名可以为第一时间段标识,例如,该文件名可以为“20190628”,对应的单位时间为2019年6月28日。
该单位时间通常指天,在其他的实现方式中,也可以为小时、星期、月、季度或年等其他时间计量单位,该单位时间的大小,可以根据实际需要确定。
S120:根据第一时间段标识对应的修改后的比特串,确定用户登录信息。
该第一时间段标识对应的修改后的比特串,可以指根据第一时间段标识的单位时间内多个第一用户的登录事件进行响应及修改后的比特串。可以将第一时间段标识对应的修改后的比特串作为基础,确定各个与第一时间段标识的单位时间相关的各个登录信息。
本实施例中,比特串中的一位(即比特位)表示一个用户的登录信息。若一个比特串中有8个位,则该比特串能够表示这8个位一一对应的8个用户的登录信息,若一个比特串中有20个位,则该比特串能够表示与这20个位一一对应的20个用户的登录信息,以此类推。
本申请实施例通过用比特位来记录用户的登录信息,用由多个比特位组成的比特串来表示指定单位时间段内多个用户的登录信息。对于统计多个用户长时间内的登录状态,便无需再占用较大内存空间。仅需要一个比特串便能够记录一天内容的所有用户的登录情况,以达到较低的内存开销。
图3示出了本实施例提供的方法相比于传统的登录状态记录方法所需内存占用的对比图。如图3所示,通过比特串记录1亿个用户的在单位时间内的登录状态,只需要1亿个比特位即可,所需的内存开销为1bit*100000000=12.5M,如果单位时间为一天,那么一年则需要4.56G的存储空间即可,而对于传统方案,一年需要146G的存储空间,大幅降低了内存开销。
下面对上述步骤S110-S120进行详细介绍。
在一些实施例中,上述步骤S110可以包括多种实现方式:
作为一个示例,可以实时的对第一用户的登录事件进行响应以及修改比特串,例如,该步骤S110可以包括如下步骤:
步骤1),在第一时间段标识的单位时间内,响应的第一用户的登录事件,根据第一用户的身份标识确定在比特串中第一用户对应的比特位;
步骤2),修改第一用户对应的比特位的值为预设的第二值。
对于上述步骤1),可以对登录事件进行监测,每当登录事件发生时,便基于发生的登录事件对比特串执行修改。
基于上述步骤1)和步骤2),在第一时间段标识的单位时间结束时,确定与时间结束时的比特串,作为该第一时间段标识的单位时间内第一用户登录状态的记录。基于此,上述步骤S120可以包括以下步骤:根据第一时间段标识的时间结束时的比特串,确定用户登录信息。
通过对登录事件的监测以及实时的修改比特串的,能够快速、及时的对第一时间段标识的单位时间内的用户登录情况进行记录,在节省了存储空间的同时,提高了处理效率。
作为另一个示例,可以在第一时间段标识的单位时间之后,统计该单位时间内出现的登录事件,并对统计的登录事件进行响应及修改比特串。例如,该步骤S110可以包括以下步骤:
步骤1),响应在第一时间段标识的单位时间内的多个第一用户的登录事件;
步骤2),依次根据每个第一用户的身份标识确定在比特串中第一用户对应的比特位,并修改每个第一用户对应的比特位的值为预设的第二值。
对于步骤1)和步骤2),可以先统计第一时间段标识的单位时间内的多个第一用户的登录事件,在第一时间段标识的单位时间段结束后的指定时刻后,再依次根据刚刚统计出的每个登录事件,修改比特串。该指定时间可以根据实际需要设定,可以选择服务端设备较为空闲的时间作为指定时间。例如,单位时间为一天,在一天中,早上两点至四点服务端设备最为空闲,该指定时间可以在两点至四点中选择一个时刻。
通过申请实施例,通过在第一时间段标识的单位时间后集中的一段时间内修改比特串,在节省了存储空间的同时,降低了对服务端设备日常运行的干扰。
在一些实施例中,第一用户的身份标识可以第一用户对应的比特位相对于比特串的首位的位偏移。
示例性的,在比特串中,用从右到左相对于首位的位偏移来作为用户的身份标识,其中,首位为比特串中右边第一位,该首位对应的位偏移为0,右边第二位对应的位偏移为1,以此类推。
例如,第一时间段标识对应的比特串“1110010”中,位偏移为1、4、5和6对应的值皆为1,如果1用于表示登录过,则该比特串表示身份标识为1、4、5和6的用户在第一时间段标识对应的单位时间内登陆过。
在一些实施例中,为了便于登录状态的统计以及记录,可以预设第一值为0,预设第二值为1。基于此,可以直接将比特串中1进行相加,已得到第一时间段标识对应的单位时间内登录的玩家的数量。也可以进行其他的基础操作以实现用户登录信息的记录以及确定。下面结合具体示例进行介绍:
作为一个示例,上述步骤S110可以通过以下步骤实现对比特位的值的修改:
步骤1),从比特串的首位开始,按照第一用户的身份标识向后进行偏移,确定第一用户对应的比特位;
步骤2),将1和第一用户对应的比特位对应的当前值,进行或操作,以将第一用户对应的比特位的值修改为1。
对于上述步骤1)和步骤(2,在身份标识为n的用户发生登录事件时,将“1”基于比特串左移n位,然后将“1”跟比特串中当前的值的做或操作,以修改比特串中对应比特位的值。例如,通过如下公式实现:
比特串=比特串|(1<<n)。
作为另一个示例,还可以通过以下步骤实现第二用户在第一时间段标识对应的单位时间内的登录状态进行查询:
步骤1),响应针对第二用户的身份标识和第一时间段标识的查询请求,从所述比特串的首位开始,按照所述第二用户的身份标识向后进行偏移,确定第二用户对应的比特位;
步骤2),将1和所述第二用户对应的比特位对应的当前值,进行与操作得到查询结果;
其中,如果查询结果为1,该第二用户在第一时间段内登录;如果查询结果为0,该第二用户在第一时间段内未登录。
例如,查询某个用户的身份标识为n的用户是否有登录,只需要将“1”左移n位,然后将“1”跟此位的登录信息做与操作即可,如果结果大于0,则表示登录过,可以通过如下公式计算:
登录状态=比特串&(1<<n)。
作为另一个示例,上述步骤S120还可以通过以下步骤实现用户登录信息的确定:
步骤1),将第二时间段标识对应的多个修改后的比特串进行与操作,得到与第二时间段标识对应的第一统计结果;该第二时间段标识对应多个标识的单位时间连续的第一时间段标识;
步骤2),根据第二时间段标识对应的第一统计结果,确定第二时间段标识对应的每个单位时间内均登录的用户登录信息。
例如,如图4所示,两个比特串分别记录第一时间段标识的单位时间内的6个用户登录信息,第二时间段标识的单位时间包括两个连续的第一时间段标识的单位时间。在统计这6个用户中,这两个连续的第一时间段标识的单位时间内都登录过的用户时,只需要对这两个比特串之间的比特串进行按位与操作,即可以得到这两个连续的第一时间段标识的单位时间内都登录过的用户。
若需计算每天连续登录的用户,则只需要对不同天数的数据做与操作即可。例如,用文件名称为“LoginUser20190101”的比特串记录2019年01月01日这天的所有用户的登录信息,到月末(即2019年01月31日这天结束)时只需要对文件名称为“LoginUser20190101”至“LoginUser20190131”之间的31个比特串,进行按位与操作,即可以得到这个月31天内的统计结果,统计结果为1的比特位对应的用户在这一个月内每天都登录。
再例如,6月27日身份标识分别为1、2、4的用户登录了游戏,则数据记录为:LoginUser20190627=0010110。那么,6月27日和6月28日两天连续登录的用户则为:
LoginUser20190627&LoginUser20190628=0010110&1110010=0010010。
因此,得到连续两天登录用户的身份标识为1和4,可以看到通过这种方法计算连续登录的用户时,只需要把这m天的数据做与操作即可,时间复杂度较小,也跟用户数量n无关,只跟连续登录天数m有关,CPU开销也比传统方案的开销低很多。
作为另一个示例,上述步骤S120还可以通过以下步骤实现用户登录信息的确定:
步骤1),将第三时间段标识对应的多个修改后的所述比特串进行与操作,得到与所述第三时间段标识对应的第二统计结果;所述第三时间段标识对应多个标识的单位时间间隔指定数量个单位时间的第一时间段标识;
步骤2),根据第三时间段标识对应的第二统计结果,确定第三时间段标识对应的每个单位时间内均登录的用户登录信息。
其中,间隔指定数量个单位时间的间隔周期可以为一周、一旬、一个月、一个季度或一年等等的任意一项。例如,可以统计连续多周内的每个周六都登录。
本实施例中,不仅能够在连续登录的场景中进行统计,也可以用于统计非连续的场景。例如,可以统计一个月内,每周六都登录的用户,则只需要将本月内,每周六的登录信息做与即可。类似也可以统计两年内每年国庆期间都登录的用户,则只需要将这两年内10月1日至10月7日一共7天的14个数据分别进行按位与操作即可。
因此,针对统计用户连续登录的需求,只需要对多天原始数据做与操作,不仅使CPU开销降低,还能够提高统计长时间段内用户连续登录信息的速度,使数据处理速度更加快速,提高数据处理效率。
在一些实施例中,该方法还可以包括以下步骤:
响应第二用户的注册事件,在比特串中为第二用户分配一个比特位,并将第二用户的比特位相对于比特串的首位的位偏移作为第二用户的身份标识。
因此,在发生新的第二用户的注册事件时,也可以在比特串中为第二用户分配一个比特位,使第二用户与比特串中被分配到的比特位一一对应,从而便于对新增用户的有效管理和统计。
本实施例中,该方法还可以包括以下步骤:
响应第二用户的注册事件,在所述比特串的首位前添加第三用户对应的比特位,并将第二用户的比特位相对于比特串的首位的位偏移作为第二用户的身份标识。
因此,在发生新的第二用户的注册事件时,也能够使第二用户与比特串中的某个比特位一一对应,从而便于对第二用户后续的登录事件过程的有效管理和统计。
此外,如果出现用户注销的情况,可以对比特串中的比特位进行重分配,从而避免比特串随用户的增多而无限制的增长,造成字符串越来越长,增加储存空间的占用。例如,如果有一亿用户,有三千用户是不会再上线了,那便不用再统计这三千用户了。此时,便可以删除这三千用户占用的没用的比特位。
在一些实施例中,登录事件可以为响应在某一服务的客户端设备触发的登录操作的登录事件,该服务可以包括多种类型,例如,即时通讯、社交、出行、支付或游戏等等,下面以游戏为例继续说明。
为了应对玩家群体庞大以及服务端设备处理成本的问题,对于同一游戏,通常会设置多个虚拟服,玩家可以在任意虚拟服创建一个角色以体验该游戏,另外,为了增加娱乐性,玩家也可以在同一虚拟服创建多个角色。其中,在服务端设备中,对于玩家,通常是依据账户进行区分的,例如,该账户可以为手机号或者邮箱等等,对于角色,通常是使用角色标识来区分。在本申请实施例中的用户可以为游戏中的角色。在游戏的应用场景中,每个游戏角色在比特串中对应一个比特位,该比特位的值表示该角色在第一时间段标识对应的单位时间内是否登录过。
另外,也可以根据用户连续登录的情况,在用户对应的游戏数据中添加奖励的数据。
示例性的,可以根据上述修改过、或进行过与操作的任意比特串,确定用户是否满足奖励发放要求,并对满足奖励发放要求的用户给与奖励。例如,根据用户连续登录的天数给予一定奖励,如连续登录一周、一月、一年等,分别给予不同奖励。再例如,游戏里有每日登录签到的奖励,如果连续登录一周有额外奖励,连续登录一个月也有更大的额外奖励。
当然,本实施例提供的方法不仅可以用于发放游戏内的奖励,也可以是用于统计游戏登录信息,可以用于分析监控用户的留存信息或者回流信息、策划可以利用这些统计信息做一些针对性的营销活动,等等多种用途。
本申请实施例提供的一种登录事件的处理装置,装置应用于服务端设备,服务端设备上预先配置有用于标识用户是否登录的比特串,比特串包括多个比特位,每一个已注册的用户对应一个比特位,比特串中每一个比特位的初始值均为预设的第一值,第一值用于指示对应比特位的用户未登录,比特串对应有第一时间段标识,所述第一时间段标识用于标识一个单位时间。如图5所示,登录事件的处理装置500包括:
修改模块501用于响应在所述第一时间段标识的单位时间内的第一用户的登录事件,根据所述第一用户的身份标识确定在所述比特串中所述第一用户对应的比特位,并修改所述第一用户对应的比特位的值为预设的第二值;
确定模块502,用于根据所述第一时间段标识对应的修改后的所述比特串,确定用户登录信息。
修改模块具体用于:
在第一时间段标识的单位时间内,响应的第一用户的登录事件,根据第一用户的身份标识确定在比特串中第一用户对应的比特位;
修改第一用户对应的比特位的值为预设的第二值。
确定模块具体用于:
根据第一时间段标识的时间结束时的比特串,确定第一时间段标识的单位时间内的用户登录信息。
修改模块还用于:
响应在第一时间段标识的单位时间内的多个第一用户的登录事件;
依次根据每个第一用户的身份标识确定在比特串中第一用户对应的比特位,并修改每个第一用户对应的比特位的值为预设的第二值。
第一用户的身份标识为第一用户对应的比特位相对于比特串的首位的位偏移,第一值为0,第二值为1。
修改模块还用于:
从比特串的首位开始,按照第一用户的身份标识向后进行偏移,确定第一用户对应的比特位;
将1和第一用户对应的比特位对应的当前值,进行或操作,以将第一用户对应的比特位的值修改为1。
登录事件的处理装置还包括:
响应模块,用于响应查询请求,查询请求包括第二用户的身份标识和第一时间段标识,查询请求用于查询第二用户在第一时间段内的登录状态;
偏移模块,用于从比特串的首位开始,按照第二用户的身份标识向后进行偏移,确定第二用户对应的比特位;
操作模块,用于将1和第二用户对应的比特位对应的当前值,进行与操作得到查询结果;
其中,如果查询结果为1,第二用户在第一时间段内登录;如果查询结果为0,第二用户在第一时间段内未登录。
确定模块还用于:
将第二时间段标识对应多个修改的比特串进行与操作,得到与第二时间段标识对应的第一统计结果;第二时间段标识的单位时间包括多个连续的第一时间段标识的单位时间;
根据第二时间段标识对应的第一统计结果,确定第二时间段标识对应的每个单位时间内均登录的用户登录信息。
确定模块还用于:
将第三时间段标识的多个修改的比特串进行与操作,得到与第三时间段标识对应的第二统计结果;第三时间段标识的单位时间包括间隔指定数量个单位时间的多个第一时间段标识的单位时间;
根据第三时间段标识对应的第二统计结果,确定第三时间段标识对应的每个单位时间内均登录的用户登录信息。
登录事件的处理装置还包括:
分配模块,用于响应第三用户的注册事件,在比特串中为第三用户分配一个比特位,并将第三用户的比特位相对于比特串的首位的位偏移作为第三用户的身份标识。
登录事件的处理装置还包括:
添加模块,用于响应第三用户的注册事件,在比特串的末位后添加第三用户对应的比特位,并将第三用户的比特位相对于比特串的首位的位偏移作为第三用户的身份标识。
本实施例中,用户为游戏中的角色。
本申请实施例提供的登录事件的处理装置,与上述实施例提供的登录事件的处理方法具有相同的技术特征,所以也能解决相同的技术问题,达到相同的技术效果。
如图6所示,本申请实施例提供的一种服务端设备600,包括:处理器601、存储器602和总线,所述存储器602存储有所述处理器601可执行的机器可读指令,当服务端设备运行时,所述处理器601与所述存储器602之间通过总线通信,所述处理器601执行所述机器可读指令,以执行如上述游戏中虚拟角色的移动控制方法的步骤。
具体地,上述存储器602和处理器601能够为通用的存储器和处理器,这里不做具体限定,当处理器601运行存储器602存储的计算机程序时,能够执行上述游戏中虚拟路网的构建方法。
对应于上述游戏中虚拟路网的构建,本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行上述游戏中虚拟路网的构建的步骤。
本申请实施例所提供的游戏中虚拟路网的构建装置可以为设备上的特定硬件或者安装于设备上的软件或固件等。本申请实施例所提供的装置,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,前述描述的***、装置和单元的具体工作过程,均可以参考上述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请提供的实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台服务端设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述移动控制方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释,此外,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
最后应说明的是:以上所述实施例,仅为本申请的具体实施方式,用以说明本申请的技术方案,而非对其限制,本申请的保护范围并不局限于此,尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本申请实施例技术方案的范围。都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
Claims (15)
1.一种登录事件的处理方法,其特征在于,所述方法应用于服务端设备,所述服务端设备上预先配置有用于标识用户是否登录的比特串,所述比特串包括多个比特位,每一个已注册的用户对应一个比特位,所述比特串中每一个比特位的初始值均为预设的第一值,所述第一值用于指示对应比特位的用户未登录,所述比特串对应有第一时间段标识,所述第一时间段标识用于标识一个单位时间;所述方法包括:
响应在所述第一时间段标识的单位时间内的第一用户的登录事件,根据所述第一用户的身份标识确定在所述比特串中所述第一用户对应的比特位,并修改所述第一用户对应的比特位的值为预设的第二值;
根据所述第一时间段标识对应的修改后的所述比特串,确定用户登录信息。
2.根据权利要求1所述的方法,其特征在于,响应在所述第一时间段标识的单位时间内的第一用户的登录事件,根据所述第一用户的身份标识确定在所述比特串中所述第一用户对应的比特位,并修改所述第一用户对应的比特位的值为预设的第二值的步骤,包括:
在所述第一时间段标识的单位时间内,响应的第一用户的登录事件,根据所述第一用户的身份标识确定在所述比特串中所述第一用户对应的比特位;
修改所述第一用户对应的比特位的值为预设的第二值。
3.根据权利要求2所述的方法,其特征在于,根据所述第一时间段标识对应的修改后的所述比特串,确定用户登录信息的步骤,包括:
根据所述第一时间段标识的时间结束时的所述比特串,确定用户登录信息。
4.根据权利要求1所述的方法,其特征在于,响应在所述第一时间段标识的单位时间内的第一用户的登录事件,根据所述第一用户的身份标识确定在所述比特串中所述第一用户对应的比特位,并修改所述第一用户对应的比特位的值为预设的第二值的步骤,包括:
响应在所述第一时间段标识的单位时间内的多个第一用户的登录事件;
依次根据每个所述第一用户的身份标识确定在所述比特串中所述第一用户对应的比特位,并修改每个所述第一用户对应的比特位的值为预设的第二值。
5.根据权利要求1所述的方法,其特征在于,所述第一用户的身份标识为所述第一用户对应的比特位相对于所述比特串的首位的位偏移,所述第一值为0,所述第二值为1。
6.根据权利要求5所述的方法,其特征在于,根据所述第一用户的身份标识确定在所述比特串中所述第一用户对应的比特位,并修改所述第一用户对应的比特位的值为预设的第二值的步骤,包括:
从所述比特串的首位开始,按照所述第一用户的身份标识向后进行偏移,确定第一用户对应的比特位;
将1和所述第一用户对应的比特位对应的当前值,进行或操作,以将所述第一用户对应的比特位的值修改为1。
7.根据权利要求5所述的方法,其特征在于,还包括:
响应针对第二用户的身份标识和第一时间段标识的查询请求,从所述比特串的首位开始,按照所述第二用户的身份标识向后进行偏移,确定第二用户对应的比特位;
将1和所述第二用户对应的比特位对应的当前值,进行与操作得到查询结果;
其中,如果所述查询结果为1,所述第二用户在所述第一时间段内登录;如果所述查询结果为0,所述第二用户在所述第一时间段内未登录。
8.根据权利要求5所述的方法,其特征在于,根据所述第一时间段标识对应的修改后的所述比特串,确定用户登录信息的步骤,包括:
将第二时间段标识对应的多个修改后的所述比特串进行与操作,得到与所述第二时间段标识对应的第一统计结果;所述第二时间段标识对应多个标识的单位时间连续的第一时间段标识;
根据所述第二时间段标识对应的第一统计结果,确定所述第二时间段标识对应的每个单位时间内均登录的用户登录信息。
9.根据权利要求5所述的方法,其特征在于,根据所述第一时间段标识对应的修改后的所述比特串,确定用户登录信息的步骤,包括:
将第三时间段标识对应的多个修改后的所述比特串进行与操作,得到与所述第三时间段标识对应的第二统计结果;所述第三时间段标识对应多个标识的单位时间间隔指定数量个单位时间的第一时间段标识;
根据所述第三时间段标识对应的第二统计结果,确定所述第三时间段标识对应的每个单位时间内均登录的用户登录信息。
10.根据权利要求5所述的方法,其特征在于,还包括:
响应第三用户的注册事件,在所述比特串中为所述第三用户分配一个比特位,并将所述第三用户的比特位相对于所述比特串的首位的位偏移作为所述第三用户的身份标识。
11.根据权利要求5所述的方法,其特征在于,还包括:
响应第三用户的注册事件,在所述比特串的首位前添加所述第三用户对应的比特位,并将所述第三用户的比特位相对于所述比特串的首位的位偏移作为所述第三用户的身份标识。
12.根据权利要求5所述的方法,其特征在于,所述用户为游戏中的角色。
13.一种登录事件的处理装置,其特征在于,所述装置应用于服务端设备,所述服务端设备上预先配置有用于标识用户是否登录的比特串,所述比特串包括多个比特位,每一个已注册的用户对应一个比特位,所述比特串中每一个比特位的初始值均为预设的第一值,所述第一值用于指示对应比特位的用户未登录,所述比特串对应有第一时间段标识,所述第一时间段标识用于标识一个单位时间;所述装置包括:
修改模块,用于响应在所述第一时间段标识的单位时间内的第一用户的登录事件,根据所述第一用户的身份标识确定在所述比特串中所述第一用户对应的比特位,并修改所述第一用户对应的比特位的值为预设的第二值;
确定模块,用于根据所述第一时间段标识对应的修改后的所述比特串,确定用户登录信息。
14.一种服务端设备,包括存储器、处理器,所述存储器中存储有可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现上述权利要求1至12任一项所述的方法的步骤。
15.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有机器可执行指令,所述计算机可执行指令在被处理器调用和执行时,所述计算机可执行指令促使所述处理器执行所述权利要求1至12任一所述方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910839558.1A CN110523083A (zh) | 2019-09-05 | 2019-09-05 | 登录事件的处理方法、装置以及服务端设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910839558.1A CN110523083A (zh) | 2019-09-05 | 2019-09-05 | 登录事件的处理方法、装置以及服务端设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110523083A true CN110523083A (zh) | 2019-12-03 |
Family
ID=68667172
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910839558.1A Pending CN110523083A (zh) | 2019-09-05 | 2019-09-05 | 登录事件的处理方法、装置以及服务端设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110523083A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110827072A (zh) * | 2019-10-31 | 2020-02-21 | 支付宝(杭州)信息技术有限公司 | 数据查询、存储方法及*** |
CN111400510A (zh) * | 2020-03-18 | 2020-07-10 | 腾讯音乐娱乐科技(深圳)有限公司 | 数据归档处理方法、装置、设备以及可读存储介质 |
CN112529613A (zh) * | 2020-11-27 | 2021-03-19 | 广州华多网络科技有限公司 | 用户连续登录数据的处理、虚拟资源的转移方法和装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104202440A (zh) * | 2014-09-02 | 2014-12-10 | 腾讯科技(深圳)有限公司 | 一种标识终端的方法、服务器及*** |
CN105630972A (zh) * | 2015-12-24 | 2016-06-01 | 网易(杭州)网络有限公司 | 数据处理方法及装置 |
CN106899564A (zh) * | 2016-07-01 | 2017-06-27 | 阿里巴巴集团控股有限公司 | 一种登录方法和装置 |
-
2019
- 2019-09-05 CN CN201910839558.1A patent/CN110523083A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104202440A (zh) * | 2014-09-02 | 2014-12-10 | 腾讯科技(深圳)有限公司 | 一种标识终端的方法、服务器及*** |
CN105630972A (zh) * | 2015-12-24 | 2016-06-01 | 网易(杭州)网络有限公司 | 数据处理方法及装置 |
CN106899564A (zh) * | 2016-07-01 | 2017-06-27 | 阿里巴巴集团控股有限公司 | 一种登录方法和装置 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110827072A (zh) * | 2019-10-31 | 2020-02-21 | 支付宝(杭州)信息技术有限公司 | 数据查询、存储方法及*** |
CN111400510A (zh) * | 2020-03-18 | 2020-07-10 | 腾讯音乐娱乐科技(深圳)有限公司 | 数据归档处理方法、装置、设备以及可读存储介质 |
CN111400510B (zh) * | 2020-03-18 | 2024-02-27 | 腾讯音乐娱乐科技(深圳)有限公司 | 数据归档处理方法、装置、设备以及可读存储介质 |
CN112529613A (zh) * | 2020-11-27 | 2021-03-19 | 广州华多网络科技有限公司 | 用户连续登录数据的处理、虚拟资源的转移方法和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109729131B (zh) | 一种应用请求的处理方法、装置和路由器 | |
CN110523083A (zh) | 登录事件的处理方法、装置以及服务端设备 | |
US20160210657A1 (en) | Real-time marketing campaign stimuli selection based on user response predictions | |
CN104183027B (zh) | 一种用户状态确定方法及装置 | |
WO2017206811A1 (zh) | 一种信息处理方法、服务器及非易失性存储介质 | |
CN108427725A (zh) | 数据处理方法、装置和*** | |
US8880676B1 (en) | Resource planning for computing | |
CN108696420A (zh) | 通讯网络中的消息推送方法和装置 | |
CN115408136B (zh) | 一种基于遗传算法的rpa流程调度方法 | |
CN109902859B (zh) | 基于大数据和机器学习算法的排队高峰时段预估方法 | |
CN106357751A (zh) | 一种客户浏览器电费支付*** | |
CN112804083B (zh) | 一种基于大数据的网络分配方法 | |
CN109840704A (zh) | 一种智慧***管理*** | |
CN108985048A (zh) | 模拟器识别方法及相关装置 | |
CN106373014A (zh) | 一种评估应用健康度的方法及装置 | |
CN105260253A (zh) | 一种服务器故障测算方法和装置 | |
CN106390451A (zh) | 对游戏服务器的容量进行测试的方法及装置 | |
Huang et al. | Eliciting information from heterogeneous mobile crowdsourced workers without verification | |
CN113139826A (zh) | 广告位的分配权限确定方法、装置、计算机设备 | |
CN103699546A (zh) | 一种生成网吧ip数据库的方法及装置 | |
Choi et al. | Implementation of the big data management system for demand side energy management | |
CN113222245A (zh) | 居民用户月度电量电费异常核查方法及***、存储介质 | |
CN104992060A (zh) | 用户年龄估计方法及装置 | |
CN110267717B (zh) | 在多租户环境中按不同单独租户自动生成自动缩放呼叫规则的方法及装置 | |
CN107592234A (zh) | 业务链路故障定位的方法、***和计算机可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20191203 |