CN106708417A - 缓存数据的管理方法及装置 - Google Patents
缓存数据的管理方法及装置 Download PDFInfo
- Publication number
- CN106708417A CN106708417A CN201510781765.8A CN201510781765A CN106708417A CN 106708417 A CN106708417 A CN 106708417A CN 201510781765 A CN201510781765 A CN 201510781765A CN 106708417 A CN106708417 A CN 106708417A
- Authority
- CN
- China
- Prior art keywords
- user
- data
- time
- user behavior
- live
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0608—Saving storage space on storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0647—Migration mechanisms
- G06F3/0649—Lifecycle management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0656—Data buffering arrangements
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请公开了一种缓存数据的管理方法及装置,其中,该方法包括:接收客户端采集的用户行为数据,其中,用户行为数据为客户端的登录账户执行对应的操作行为而生成的数据;依据用户行为数据确定用户的缓存数据在缓存中的存活时间;依据存活时间对缓存中的缓存数据进行管理。
Description
技术领域
本申请涉及数据处理领域,具体而言,涉及一种缓存数据的管理方法及装置。
背景技术
在支持多用户同时进行分析的交互式数据分析系统中,每个用户都可以选定自己所需的数据进行分析,每个用户的分析过程一般包含了多次分析动作,例如对分析数据的过滤条件进行多次修改等。服务器端在没有对用户的分析数据进行缓存的情况下,用户的每个分析动作均需要重新加载分析数据。根据相关技术中处理缓存数据耗费的时间,分析数据的加载耗时占整个分析过程的50%左右。因此,如果能够对用户的分析数据进行缓存,避免数据重复多次加载过程,则能提高用户分析速度。
在服务器端使用分析数据缓存时会遇到以下问题:需要确定用户结束本次分析的时刻,这样才能及时释放用户持有的分析数据缓存,避免缓存空间浪费。针对该问题,相关技术中,主要存在以下几种技术方案:
基于超时时间的缓存管理机制,此机制为每个缓存块设定一个存活时长,超过时长后缓存块失效并被清除。此机制的缺点在于超时时长与用户分析过程时长不匹配,从而造成缓存过早或过晚释放,导致分析效率降低或缓存空间浪费。
基于用户指令的缓存机制,此机制由用户来控制缓存的存储和清除,用户需要给出明确的存储指令和清除指令。此机制使用过程复杂,不适合普通用户。且用户可能忘记发送清除缓存指令,从而导致缓存长期存在。
基于用户会话的缓存机制,此机制在分析时将缓存存放于用户会话中,在用户的会话结束后清除缓存。此机制的缺点在于无法存储大规模分析数据,且会话持续时长大于分析过程时长,从而造成存储空间浪费。
针对相关技术中的上述的问题,目前尚未提出有效的解决方案。
发明内容
根据本申请实施例的一个方面,提供了一种缓存数据的管理方法,包括:接收客户端采集的用户行为数据,其中,所述用户行为数据为所述客户端的登录账户执行对应的操作行为而生成的数据;依据所述用户行为数据确定所述用户的缓存数据在缓存中的存活时间;依据所述存活时间对所述缓存中的所述缓存数据进行管理。
根据本申请实施例的另一方面,还提供了一种缓存数据的管理装置,包括:接收模块,用于接收客户端采集的用户行为数据,其中,所述用户行为数据为所述客户端的登录账户执行对应的操作行为而生成的数据;确定模块,用于依据所述用户行为数据确定所述用户的缓存数据在缓存中的存活时间;管理模块,用于依据所述存活时间对所述缓存中的所述缓存数据进行管理。
根据本申请实施例的一个方面,提供了另一种缓存数据的管理方法,包括:采集用户行为数据,其中,该用户行为数据用于指示所述用户行为数据所对应用户的操作行为;所述用户行为数据为服务器确定所述用户的缓存数据在缓存中的存活时间的依据;将所述用户行为数据发送至服务器。
根据本申请实施例的另一方面,还提供了另一种缓存数据的管理装置,包括:采集模块,用于采集用户行为数据,其中,该用户行为数据用于指示所述用户行为数据所对应用户的操作行为;所述用户行为数据为服务器确定所述用户的缓存数据在缓存中的存活时间的依据;发送模块,用于将所述用户行为数据发送至服务器。
在本申请实施例中,采用依据用户行为数据确定用户的缓存数据在缓存中的存活时间,并依据所述存活时间对所述缓存中的所述缓存数据进行管理的方式,即通过用户行为确定缓存数据在缓存中的存活时间,实现了及时释放缓存数据的目的,从而达到了节约缓存空间的技术效果,进而解决了相关技术中由于缓存数据释放不及时而导致的浪费缓存空间的技术问题。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是本申请实施例的一种缓存数据的管理方法的计算机终端的硬件结构框图;
图2是根据本申请实施例的一种缓存数据的管理方法的流程图;
图3是根据本申请实施例的获取缓存数据在缓存中的存活时间的流程图;
图4是根据本申请实施例的缓存数据的管理装置的结构框图;
图5是根据本申请实施例的缓存数据的管理装置的可选结构框图一;
图6是根据本申请实施例的缓存数据的管理装置的可选结构框图二;
图7是根据本申请实施例的缓存数据的管理装置的可选结构框图三;
图8是根据本申请实施例的缓存数据的管理装置的可选结构框图四;
图9是根据本申请实施例另一种缓存数据的管理方法的流程图;
图10是根据本申请实施例的缓存数据的管理系统结构图;
图11是根据本申请的系统中缓存管理器的工作流程示意图;
图12是根据本申请实施例的另一种缓存数据的管理装置的结构框图;以及
图13是根据本申请实施例的另一种缓存数据的管理装置的可选结构框图一。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
实施例1
根据本申请实施例,还提供了一种缓存数据的管理方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本申请实施例一所提供的方法实施例可以在服务器、移动终端、计算机终端或者类似的运算装置中执行。以运行在计算机终端上为例,图1是本申请实施例的一种缓存数据的管理方法的计算机终端的硬件结构框图。如图1所示,计算机终端10可以包括一个或多个(图1中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)、用于存储数据的存储器104、以及用于通信功能的传输装置106。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,计算机终端10还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
存储器104可用于存储应用软件的软件程序以及模块,如本申请实施例中的缓存数据的管理方法对应的程序指令/模块,处理器102通过运行存储在存储器104内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的应用程序的漏洞检测方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机终端10的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(Network Interface Controller,NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(RadioFrequency,RF)模块,其用于通过无线方式与互联网进行通讯。
在上述运行环境下,本申请提供了如图2所示的缓存数据的管理方法,图2是根据本申请实施例的一种缓存数据的管理方法的流程图,如图2所示,包括:
步骤S202,接收客户端采集的用户行为数据,其中,该用户行为数据为所述客户端的登录账户执行对应的操作行为而生成的数据;
在一个可选的实施例中,该处理步骤S202可以应用于由客户端和服务器组成的系统中:用户在客户端上进行缓存数据的相关操作,对缓存数据的操作包括用户对缓存数据的具体行为,如在客户端对缓存数据进行的鼠标点击动作,键盘输入动作,在客户端设置参数行为、关闭开启处理界面的动作等,形成对应的用户行为数据,服务器接收客户端采集的用户行为数据后进行后续的处理。而在具体的采集过程中,可以按照预设周期进行采集,也可以通过客户端的用户行为触发采集的操作。
可选的,可以对用户执行的操作行为进行分类,例如可以将不同类型的操作事件作为操作行为的来源,根据操作行为对缓存数据的影响,可以将用户执行的操作行为分为第一指定类型和第二指定类型,然后对不同类型的操作行为作规范化处理,保留重要的操作记录,避免重复的操作记录,在一个可选实施例中,用户操作事件可以包括以下至少之一,但不限于此:鼠标移动事件、鼠标点击事件、键盘输入事件、对所述处理界面的关闭操作、在对所述缓存数据进行指定处理时的操作行为,其中,对所述缓存数据进行指定处理时的操作行为可以是设置参数,将鼠标移动事件、鼠标点击事件、键盘输入事件列为所述第一指定类型的用户操作事件,同时,将对所述处理界面的关闭操作、在对所述缓存数据进行指定处理时的操作行为列为所述第二指定类型的用户操作事件。
对于不同类型的操作事件,进行不同的规范化处理,即将多次操作事件设置为一次用户行为和/或将每次操作事件设置为一次用户行为,具体的事件规范化规则可以是:
对于第一指定类型的用户操作事件,可以通过以下方式进行规范化处理:多次鼠标移动事件规范化为一次鼠标移动行为(即一次用户行为,以下类同)、多次鼠标点击事件规范化为一次鼠标点击行为、多次键盘输入事件规范化为一次键盘输入行为;对于第二指定类型的用户操作事件,可以通过以下方式进行规范化处理:指定处理时的操作行为,如在多用户交互式分析系统中对缓存数据的单次分析动作事件、设置分析参数事件等规范化为一次分析行为,而关闭分析窗口事件,结束分析事件等动作规范化为结束分析行为,即表示立即释放缓存数据。
步骤S204,依据用户行为数据确定该用户的缓存数据在缓存中的存活时间;
可选地,以多用户交互式分析系统为例,当数据保存在缓存中时,用户可以使用客户端对该数据进行缓存数据的相关分析和处理操作,而当数据被转移不存在缓存中时,用户就不能对该数据进行缓存数据的相关操作,需要从外部存储器中将数据加载到缓存中来,而数据在缓存中的保存时间,或者用户可以使用客户端对数据进行缓存操作的时间段,就是缓存数据在缓存中的存活时间。
相关技术中的缓存数据在缓存中的存活时间是直接由用户来设置的,当用户在客户端上关闭缓存数据的处理页面,或者发送删除缓存数据的指令后,缓存数据会在缓存中直接被删除。而本申请实施例是根据用户行为得到的用户行为数据来确定缓存数据的存活时间,进而根据存活时间对缓存数据进行管理(例如加载和清除),图3是根据本申请实施例的获取缓存数据在缓存中的存活时间的流程图,如图3所示,包括:
步骤S302,在统计周期内,统计用户行为数据中各类用户行为所对应的延期时长,得到所述各类用户行为所对应的延期时长之和;其中,该延期时长用于指示上述存活时间的延长时间;
在本实施例中,为了节约服务器的系统开销,对于缓存数据的释放是按照一定周期来操作的,如每5分钟统计释放一次,还可以根据缓存空间内缓存数据占用总空间的比例来设置统计周期,缓存空间占用的越高,统计周期越短。用户在执行不同的用户行为时,会产生对应的延期时长,在统计周期之内所有的用户行为的延期时长的总和就是缓存数据在缓存内的延长时间,延长时间大于或等于0。
步骤S304,将各类用户行为所对应的延期时长之和与缓存数据的当前存活时间相加,得到的总和为所述缓存数据在所述缓存中的最终存活时间。
当前存活时间是系统当前的时间,可以是服务器的系统时间或者是采集到的客户端所在终端的时间戳,如当前存活时间是10:00:00,各类用户行为所对应的延期时长之和为当前周期内统计出的缓存数据需要缓存的时间,如10分钟,与当前存活时间相加得到缓存数据在所述缓存中的最终存活时间则为10:10:00,缓存数据的存活时间被更新为10:10:00,即表示缓存数据至少在10:10:00之前不会被释放。
最终存活时间可以通过以下方式确定,包括:
S11,比较上述总和与上述统计周期的上一个统计周期内得到的存活时间;
上一个统计周期内得到的存活时间是上一个周期统计周期内统计出的上述缓存数据需要存活保留的时间,如上一个统计周期内得到的存活时间是10:05:00,根据上述实施例的计算可知,本周期内统计出的缓存数据的存活时间为10:10:00,由此可知,本周期内统计出的缓存数据的存活时间较长。
S12,将两者中的较大者作为所述最终存活时间;其中,所述上一个统计周期内得到的存活时间为所述各类用户行为所对应的延期时长之和与所述缓存数据的已有存活时间相加得到。
在一个可选实施例中,上一个统计周期内得到的存活时间是10:05:00,根据上述实施例的计算可知,本周期内统计出的缓存数据的存活时间为10:10:00,将两者中的较大者作为所述最终存活时间,即最终存活时间为10:10:00。
在具体确定延期时长的过程中,可以通过以下公式来确定:
s=a*t*m,其中,a表示与每类用户行为的类型对应的权重值,s表示每类事件的所述延期时长,t表示与所述每类用户行为的类型对应的延期时长,m表示所述每类用户行为的发生次数。下面结合具体的示例对上述公式进行举例说明:
各类事件的权重值总和为1,首先确定和区别各类用户行为的类型,用户行为的类型包括:鼠标移动事件、鼠标点击事件、键盘输入事件、分析动作事件、设置分析参数事件、关闭分析窗口事件,结束分析事件,各类用户行为发生的次数分别为:5、0、2、1、2、0、0,根据用户行为的类型经过规范化处理后,鼠标移动事件、鼠标点击事件、键盘输入事件、分析动作事件、设置分析参数事件、关闭分析窗口事件,结束分析事件发生的次数分别为:1、0、1、1、0、0,预设的鼠标移动事件、鼠标点击事件、键盘输入事件、分析动作事件、设置分析参数事件权重值分别为:0.1、0.2、0.2、0.2、0.3,鼠标移动事件、鼠标点击事件、键盘输入事件、分析动作事件、设置分析参数事件对应的延期时长分别是:1分钟、1分钟、1分钟、2分钟、2分钟,由此可以计算出每类事件的延期时长,如鼠标移动事件,根据公式s=a*t*m,计算后得到S=0.1*1*1=0.1分钟,其他类别的时间的延期时长依次类推,在此不再赘述。如各类事件的用户行为所对应的延期时长之和为10分钟,当前存活时间为10:00:00,相加得到缓存数据在所述缓存中的最终存活时间10:10:00,上一个统计周期内得到的存活时间为10:05:00,两者中的较大者10:10:00作为上述缓存数据的最终存活时间。
步骤S206,依据存活时间对缓存中的缓存数据进行管理。
可选地,依据所述存活时间对所述缓存中的所述缓存数据进行管理,即依据最终存活时间管理缓存数据,具体的管理行为可以是释放缓存数据,保留缓存数据,或者暂时隔离或转移缓存数据,但不限于此。在最终存活时间确定后,判断服务器的当前时间是否到达最终存活时间的时间点10:10:00,如达到,则自行释放缓存数据,而不需要通过人工来删除,实现了管理缓存数据的智能化,提高缓存数据的管理效率。在本周期产生的存活时间被下一周期的存活时间更新之前,将本周期产生的存活时间一直是缓存数据的最终存活时间。
对于特殊的用户行为,如关闭分析窗口事件,或结束分析事件等一类事件时,依据所述用户行为数据确定所述用户的缓存数据在缓存中的存活时间,即,将所述用户的缓存数据在所述缓存中的存活时间设置为0,并将所述用户的缓存数据从所述缓存中删除。
对于多个用户的缓存数据,分别维护不同的缓存过期表,例如对于某个用户,与该用户对应的缓存过期表中维护该用户的缓存数据的存活时间,可以统一设置缓存数据释放周期,在周期时间到来时遍历所有的缓存过期表,对缓存过期表对应的缓存数据进行管理,可选的,缓存过期表也可以管理一个客户端(用户)操作的多个缓存数据。依据所述存活时间对所述缓存中的所述缓存数据进行管理具体包括:
S21,遍历缓存过期表,其中,该缓存过期表用于存储与用户对应的缓存数据在缓存中的缓存记录;
S22,在缓存过期表中用户的缓存记录所指示存活时间大于当前时刻时,在该缓存中继续保留所述缓存数据;在上述存活时间小于当前时刻时,则从上述缓存中清除所述缓存数据。
在本申请实施例中,采用依据用户行为数据确定用户的缓存数据在缓存中的存活时间,并依据所述存活时间对所述缓存中的所述缓存数据进行管理的方式,即通过用户行为确定缓存数据在缓存中的存活时间,实现了及时释放缓存数据的目的,从而达到了节约缓存空间的技术效果,进而解决了相关技术中由于缓存数据释放不及时而导致的浪费缓存空间的技术问题。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。
实施例2
根据本申请实施例,还提供了一种用于实施上述缓存数据的管理装置的装置,图4是根据本申请实施例的缓存数据的管理装置的结构框图,如图4所示,该装置包括:接收模块40、确定模块42、管理模块44,其中,
接收模块40,用于接收客户端采集的用户行为数据,其中,所述用户行为数据为上述客户端的登录账户执行对应的操作行为而生成的数据;
在一个可选的实施例中,该接收模块40可以应用于由客户端和服务器组成的系统中:用户在客户端上进行缓存数据的相关操作,对缓存数据的操作包括用户对缓存数据的具体行为,如在客户端对缓存数据进行的鼠标点击动作,键盘输入动作,在客户端设置参数行为、关闭开启处理界面的动作等,形成对应的用户行为数据,服务器接收客户端采集的用户行为数据后进行后续的处理。而在具体的采集过程中,可以按照预设周期进行采集,也可以通过客户端的用户行为触发采集的操作。
图5是根据本申请实施例的缓存数据的管理装置的可选结构框图一,如图5所示,接收模块40按照以下方式进行规范化处理后得到用户行为数据,包括:第一设置单元402、第二设置单元404,其中,
第一设置单元402,用于将在缓存数据的处理界面上多次执行的第一指定类型的用户操作事件作为一次用户行为;
第二设置单元404,用于将在处理界面上每次执行的第二指定类型的用户操作事件作为一次用户行为。
可选的,第一设置单元402和第二设置单元404可以对用户执行的操作行为进行分类,例如可以将不同类型的操作事件作为操作行为的来源,根据操作行为对缓存数据的影响,可以将用户执行的操作行为分为第一指定类型和第二指定类型,然后对不同类型的操作行为作规范化处理,保留重要的操作记录,避免重复的操作记录,在一个可选实施例中,用户操作事件可以包括以下至少之一,但不限于此:鼠标移动事件、鼠标点击事件、键盘输入事件、对所述处理界面的关闭操作、在对所述缓存数据进行指定处理时的操作行为,其中,对所述缓存数据进行指定处理时的操作行为可以是设置参数,将鼠标移动事件、鼠标点击事件、键盘输入事件列为所述第一指定类型的用户操作事件,同时,将对所述处理界面的关闭操作、在对所述缓存数据进行指定处理时的操作行为列为所述第二指定类型的用户操作事件。
对于不同类型的操作事件,进行不同的规范化处理,即将多次操作事件设置为一次用户行为和/或将每次操作事件设置为一次用户行为,第一设置单元402和第二设置单元404具体的事件规范化规则可以是:
对于第一指定类型的用户操作事件,第一设置单元402可以通过以下方式进行规范化处理:将多次鼠标移动事件规范化为一次鼠标移动行为、第一设置单元402将多次鼠标点击事件规范化为一次鼠标点击行为(即一次用户行为,以下类同)、第一设置单元402将多次键盘输入事件规范化为一次键盘输入行为、;对于第二指定类型的用户操作事件,第二设置单元404可以通过以下方式进行规范化处理:将指定处理时的操作行为,如在多用户交互式分析系统中对缓存数据的单次分析动作事件、设置分析参数事件等规范化为一次分析行为。而关闭分析窗口事件,结束分析事件等动作规范化为结束分析行为,即表示立即释放缓存数据。
确定模块42,与接收模块40耦合连接,用于依据上述用户行为数据确定该用户的缓存数据在缓存中的存活时间;
可选地,以多用户交互式分析系统为例,当数据保存在缓存中时,用户可以使用客户端对该数据进行缓存数据的相关分析和处理操作,而当数据被转移不存在缓存中时,用户就不能对该数据进行缓存数据的相关操作,需要从外部存储器中将数据加载到缓存中来,而数据在缓存中的保存时间,或者用户可以使用客户端对数据进行缓存操作的时间段,就是缓存数据在缓存中的存活时间。
相关技术中的缓存数据在缓存中的存活时间是直接由用户来设置的,当用户在客户端上关闭缓存数据的处理页面,或者发送删除缓存数据的指令后,缓存数据才会在缓存中直接被删除。而本申请实施例是根据用户行为得到的用户行为数据来确定缓存数据的存活时间,进而根据存活时间对缓存数据进行管理(例如加载和清除),图6是根据本申请实施例的缓存数据的管理装置的可选结构框图二,如图6所示,确定模块42包括:统计单元422、计算单元424,其中,
统计单元422,用于在统计周期内,统计用户行为数据中各类用户行为所对应的延期时长,得到该各类用户行为所对应的延期时长之和;其中,所述延期时长用于指示所述存活时间的延长时间;
在本实施例中,为了节约服务器的开销,对于缓存数据的释放是按照一定周期来操作的,如每5分钟统计释放一次,还可以根据缓存空间内缓存数据占用总空间的比例来设置统计周期,缓存空间占用的越高,统计周期越短。用户在执行不同的用户行为时,会产生对应的延期时长,在统计周期之内所有的用户行为的延期时长的总和就是缓存数据在缓存内的延长时间,延长时间大于或等于0。存活时间是上一个周期统计的缓存数据在缓存内的存活时长。
计算单元424,用于将所述各类用户行为所对应的延期时长之和与所述缓存数据的当前存活时间相加,得到的总和为所述缓存数据在所述缓存中的最终存活时间。
当前存活时间是系统当前的时间,可以是服务器的系统时间或者是采集到的客户端所在终端的时间戳,如当前存活时间是10:00:00,各类用户行为所对应的延期时长之和为当前周期内统计出的缓存数据需要缓存的时间,如10分钟,与当前存活时间相加得到缓存数据在所述缓存中的最终存活时间则为10:10:00,缓存数据的存活时间被更新为10:10:00,即表示缓存数据至少在10:10:00之前不会被释放。
统计单元通过以下公式确定每类用户行为的延期时长:
s=a*t*m,其中,a表示与所述每类用户行为的类型对应的权重值,s表示所述延期时长,t表示与所述每类用户行为的类型对应的延期时长,m表示所述每类用户行为的发生次数。下面结合具体的示例对上述公式进行举例说明:
各类事件的权重值总和为1,首先确定和区别各类用户类别,用户行为的类型包括:鼠标移动事件、鼠标点击事件、键盘输入事件、分析动作事件、设置分析参数事件、关闭分析窗口事件,结束分析事件发生的次数为:5、0、2、1、2、0、0,经过规范化处理后,鼠标移动事件、鼠标点击事件、键盘输入事件、分析动作事件、设置分析参数事件、关闭分析窗口事件,结束分析事件发生的次数分别为:1、0、1、1、0、0,预设的鼠标移动事件、鼠标点击事件、键盘输入事件、分析动作事件、设置分析参数事件权重值分别为:0.1、0.2、0.2、0.2、0.3,鼠标移动事件、鼠标点击事件、键盘输入事件、分析动作事件、设置分析参数事件对应的延期时长分别是:1分钟、1分钟、1分钟、2分钟、2分钟,由此可以计算出每类事件的延期时长,如鼠标移动事件,公式s=a*t*m,计算后得到0.1分钟=0.1*1*1,其他类别的时间的延期时长一次类推,再次不再赘述。如各类事件的用户行为所对应的延期时长之和为10分钟,当前存活时间为10:00:00,相加得到缓存数据在所述缓存中的最终存活时间10:10:00,上一个统计周期内得到的存活时间为10:05:00,两者中的较大者10:10:00作为所述最终存活时间。
图7是根据本申请实施例的缓存数据的管理装置的可选结构框图三,如图7所示,除了图6所示的所有模块和单元外,所述计算单元424通过以下方式确定最终存活时间,包括:比较子单元4242、确定子单元4244,其中,
比较子单元4242,用于比较所述总和与所述统计周期的上一个统计周期内得到的存活时间;
确定子单元4244,用于将两者中的较大者作为所述最终存活时间;其中,所述上一个统计周期内得到的存活时间为所述各类用户行为所对应的延期时长之和与所述缓存数据的已有存活时间相加得到。
在可选实施例中,上一个统计周期内得到的存活时间是10:05:00,根据上述实施例的计算可知,本周期内统计出的缓存数据的存活时间为10:10:00,将两者中的较大者作为所述最终存活时间,即最终存活时间为10:10:00。
上一个统计周期内得到的存活时间是上一个周期统计出的缓存数据需要存活的时间,如上一个统计周期内得到的存活时间是10:05:00,根据上述可知,本周期内统计出的缓存数据的存活时间为10:10:00,由此可知,本周期内统计出的缓存数据的存活时间较长。
确定模块42第三设置单元,用于在所述用户行为数据为所述第二指定类型的用户操作事件所对应的用户行为时,将所述用户的缓存数据在所述缓存中的存活时间设置为0;
对于特殊的用户行为,如关闭分析窗口事件,或结束分析事件等一类事件时,依据所述用户行为数据确定所述用户的缓存数据在缓存中的存活时间,即,将所述用户的缓存数据在所述缓存中的存活时间设置为0。
管理模块44,与确定模块42耦合连接,用于依据所述存活时间对所述缓存中的所述缓存数据进行管理。
在本实施例中,依据所述存活时间对所述缓存中的所述缓存数据进行管理,即依据最终存活时间管理缓存数据,具体的管理行为可以是释放缓存数据,保留缓存数据,或者暂时隔离或转移缓存数据,在最终存活时间确定后,判断服务器的当前时间是否到达最终存活时间的时间点10:10:00,如达到,则自行释放缓存数据,而不需要通过人工来删除,提高了管理缓存数据的智能化。在本周期产生的存活时间被下一周期的存活时间更新之前,一直是缓存数据的最终存活时间。
管理模块44包括:删除单元,用于在所述存活时间设置为0时,将所述用户的缓存数据从所述缓存中删除。
对于特殊的用户行为,如关闭分析窗口事件,或结束分析事件等类事件时,依据所述用户行为数据确定所述用户的缓存数据在缓存中的存活时间,即,将所述用户的缓存数据在所述缓存中的存活时间设置为0,并将所述用户的缓存数据从所述缓存中删除。
对于多个客户端的缓存数据,分别有不同的缓存过期表,表中分别对应不同的存活时间,可以统一设置缓存时间释放周期,在周期时间到来时遍历所有的缓存过期表,对缓存过期表对应的缓存数据进行管理,图8是根据本申请实施例的缓存数据的管理装置的可选结构框图四,如图8所示,管理模块44包括:遍历单元442、处理单元444,管理模块44依据所述存活时间对所述缓存中的所述缓存数据进行管理具体包括:
遍历单元442,用于遍历缓存过期表,其中,该缓存过期表用于存储与用户对应的缓存数据在缓存中的缓存记录;
处理单元444,与遍历单元442耦合连接,用于在所述缓存过期表中所述用户的缓存记录所指示存活时间大于当前时刻时,在所述缓存中继续保留所述缓存数据;在所述存活时间小于当前时刻时,则从所述缓存中清除所述缓存数据。
在本申请实施例中,采用接收模块接收客户端采集的用户行为数据,其中,所述用户行为数据为所述客户端的登录账户执行对应的操作行为而生成的数据;确定模块依据所述用户行为数据确定所述用户的缓存数据在缓存中的存活时间;管理模块依据所述存活时间对所述缓存中的所述缓存数据进行管理的方式,通过用户行为确定缓存数据在缓存中的存活时间,达到了及时释放缓存数据的目的,从而实现了节约缓存空间的技术效果,进而解决了相关技术中由于缓存数据释放不及时而导致的浪费缓存空间的技术问题。
实施例3
根据本申请实施例,还提供了另一种缓存数据的管理方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本申请提供了如图9所示的缓存数据的管理方法。应用在与实施例1和实施例2中所述服务器对应的终端侧,具体可用在管理缓存数据客户端上,图9是根据本申请实施例另一种缓存数据的管理方法的流程图,包括:
步骤S902,采集用户行为数据,其中,该用户行为数据用于指示所述用户行为数据所对应用户的操作行为;所述用户行为数据为服务器确定所述用户的缓存数据在缓存中的存活时间的依据;
步骤S904,将所述用户行为数据发送至服务器。
在本实施例中,包括由客户端和服务器组成的系统,用户在客户端上进行缓存数据的相关操作,对缓存数据的操作包括用户对缓存数据的具体行为,如在客户端对缓存数据进行的鼠标点击动作,键盘输入动作,在客户端设置参数行为、关闭开启处理界面的动作等,形成对应的用户行为数据,客户端采集用户行为数据后发送给服务器进行后续的处理。而在具体的采集过程中,可以按照预设周期进行采集,也可以通过客户端的用户行为触发采集的操作。
可选的,可以对用户执行的操作行为进行分类,操作行为产生对应的操作事件,根据操作行为对缓存数据的影响,可以将用户执行的操作行为分为第一指定类型和第二指定类型,然后对不同类型的操作行为作规范化处理,保留重要的操作记录,避免重复的操作记录,本实施例将用户操作事件中可以包括类别:鼠标移动事件、鼠标点击事件、键盘输入事件、对所述处理界面的关闭操作、在对所述缓存数据进行指定处理时的操作行为,其中,对所述缓存数据进行指定处理时的操作行为可以是设置参数,将鼠标移动事件、鼠标点击事件、键盘输入事件列为所述第一指定类型的用户操作事件,同时,将对所述处理界面的关闭操作、在对所述缓存数据进行指定处理时的操作行为列为所述第二指定类型的用户操作事件。
对于不同类型的操作事件,进行不同的规范化处理,即将多次操作设置为一次、多次操作设置为一次、操作的次数不做变化,具体的事件规范化规则可以是:
多次鼠标移动事件规范化为一次鼠标移动行为、多次鼠标点击事件规范化为一次鼠标点击行为、多次键盘输入事件规范化为一次键盘输入行为、指定处理时的操作行为,如单次分析动作事件、设置分析参数事件等规范化为一次分析行为。
结合上述实施例1和实施例2所述的服务器侧的实现方法和装置以及本实施例的终端侧的实现方法,对本申请的方案进行详细全面的说明:
本申请包括客户端组件和服务器端组件两部分。其中客户端组件负责将用户行为进行收集,并将用户行为规范化后周期性的发送到服务器端。服务器端组件根据用户行为计算用户的活跃度分值,根据活跃度分值对分析数据缓存进行管理。图10是根据本申请实施例的缓存数据的管理系统结构图,如图10所示,包括:客户端100、服务器端200。
客户端100的组成部分包括:
事件收集器102:用于收集用户的键盘输入动作,鼠标移动,鼠标点击动作,分析动作,结束分析、关闭窗口动作。将用户行为规范化到预定义的行为中,将一个周期内的规范化行为发送到服务器200。
计时器104,用于设置采集周期。
服务器端200的组成部分包括:
活跃度管理器201(相当于实施例2中的接收模块40和确定模块42):用于接收客户端发送的规范化用户行为,计算用户活跃度,对每个用户的缓存过期时间进行管理。
缓存管理器202(相当于实施例2中的管理模块44):用于根据每个用户的缓存过期时刻,对缓存的加载,清除进行管理。
数据加载模块203:如缓存中无缓存数据,则从外部存储(网络,磁盘等)加载数据,加载完成后向缓存管理器请求加入缓存,并为数据分析过程提供数据。
此外,还包括:外部存储模块204、数据分析模块205、内存缓存区206。
客户端100中的事件收集器102的工作具体流程为:
接收分析页面上的鼠标、键盘事件、分析动作、关闭动作。
事件规范化,例如通过以下的方式对各种类别的事件进行规范化处理:
多次鼠标移动事件规范化为一次鼠标移动行为;
多次鼠标点击事件规范化为一次鼠标点击行为;
多次键盘输入事件规范化为一次键盘输入行为;
单次分析动作,例如设置过滤器,设置分析参数等规范化为一次分析行为;
关闭分析窗口,结束分析等动作规范化为结束分析行为。
由定时器驱动,周期性的将规范化后的用户行为发动到服务器端200。发送的用户行为采用“行为类别-发生次数”数据结构。表1是规范化处理后的各个类别用户行为的发生次数:
表1
行为类别 | 发生次数 |
鼠标移动 | 1 |
鼠标点击 | 0 |
分析行为 | 3 |
结束分析行为 | 0 |
活跃度管理器201的工作流程为:
接收客户端100发送的规范化用户行为信息,若用户行为中结束分析行为发生数量大于0,则更新缓存过期表,将此用户的缓存过期时刻设置为0,指示缓存管理器可立即清除此缓存。
若用户行为中结束分析行为发生数量等于0,则计算缓存数据的存活时间,更新缓存数据的最终缓存时间,包括:
计算缓存延长时长:
对于每一个行为类别,延长时长=分权重的类别时长*此类别行为发生次数
总延长时长=每个类别的延时之和
计算本周期延时到期时间=当前时间+总延时时长
缓存实际过期时间=取最大值(上个周期计算的缓存过期时间,本周期计算的缓存过期时间)
更新缓存过期表,设置用户的缓存过期时间为缓存实际过期时间。
缓存管理器202在具体的加载缓存数据的过程中,还需要判断缓存中剩余空间的大小,图11是根据本申请的系统中缓存管理器的工作流程示意图,如图11所示,包括:
S1100、接收加入缓存请求
S1102、判断缓存数据是否已经在缓存中;若请求的数据已经在缓存中,则拒绝再次加入缓存,若请求的数据不在缓存中,则执行S1104。
S1104、检查剩余缓存空间是否大于数据大小。
S1106、若剩余缓存空间大于数据大小,则将数据加入缓存,并将缓存过期时间更新为:当前时间+初始过期时长。
S1108、若剩余缓存空间小于数据大小,则根据缓存过期表清除不活跃缓存:
读取每一条缓存过期记录,判断缓存过期时间是否小于当前时刻。
若大于或等于,则回到步骤S1108继续进行。
若小于,则从缓存空间清除此缓存,并将其从缓存过期表中删除。回到步骤S1108继续,直到所有缓存过期表都被检查过一遍结束。
S1110、检查剩余缓存空间是否大于数据大小,若大于则将数据加入缓存,若小于则拒绝加入缓存请求。
实施例4
根据本申请实施例,还提供了另一种用于实施上述实施例3中缓存数据的管理的装置,图12是根据本申请实施例的另一种缓存数据的管理装置的结构框图,如图12所示,该装置包括:采集模块122、发送模块124,其中,
采集模块122,用于采集用户行为数据,其中,该用户行为数据用于指示所述用户行为数据所对应用户的操作行为;所述用户行为数据为服务器确定所述用户的缓存数据在缓存中的存活时间的依据;
发送模块124,用于将所述用户行为数据发送至服务器。
可选的,可以对用户执行的操作行为进行分类,操作行为产生对应的操作事件,根据操作行为对缓存数据的影响,可以将用户执行的操作行为分为第一指定类型和第二指定类型,然后对不同类型的操作行为作规范化处理,保留重要的操作记录,避免重复的操作记录,本实施例将用户操作事件中可以包括类别:鼠标移动事件、鼠标点击事件、键盘输入事件、对所述处理界面的关闭操作、在对所述缓存数据进行指定处理时的操作行为,其中,对所述缓存数据进行指定处理时的操作行为可以是设置参数,将鼠标移动事件、鼠标点击事件、键盘输入事件列为所述第一指定类型的用户操作事件,同时,将对所述处理界面的关闭操作、在对所述缓存数据进行指定处理时的操作行为列为所述第二指定类型的用户操作事件。
图13是根据本申请实施例的另一种缓存数据的管理装置的可选结构框图一,如图13所示,所述装置还包括:
第一设置模块132,用于在所述发送模块将所述用户行为数据发送至服务器之前,按照以下方式对所述用户行为数据进行规范化处理:将在所述缓存数据的处理界面上多次执行的第一指定类型的用户操作事件作为一次用户行为;
第二设置模块134,用于在所述发送模块将所述用户行为数据发送至服务器之前,按照以下方式对所述用户行为数据进行规范化处理:将在所述处理界面上每次执行的第二指定类型的用户操作事件作为一次用户行为。
对于不同类型的操作事件,进行不同的规范化处理,即将多次操作设置为一次、多次操作设置为一次、操作的次数不做变化,具体的事件规范化规则可以是:
多次鼠标移动事件规范化为一次鼠标移动行为、多次鼠标点击事件规范化为一次鼠标点击行为、多次键盘输入事件规范化为一次键盘输入行为、指定处理时的操作行为,如单次分析动作事件、设置分析参数事件等规范化为一次分析行为。
结合上述实施例1和实施例2所述的服务器侧的实现方法和装置以及本实施例的终端侧的实现装置,对本申请的方案进行详细全面的说明:
本申请包括客户端组件和服务器端组件两部分。其中客户端组件负责将用户行为进行收集,并将用户行为规范化后周期性的发送到服务器端。服务器端组件根据用户行为计算用户的活跃度分值(可以用缓存数据的存活时间体现),根据活跃度分值对分析数据缓存进行管理。图10是根据本申请的系统结构图,如图10所示,包括:客户端100、服务器端200。
客户端100的组成部分包括:
事件收集器102(相当于实施例4中的采集模块122和发送模块124):用于收集用户的键盘输入动作,鼠标移动,鼠标点击动作,分析动作,结束分析、关闭窗口动作。将用户行为规范化到预定义的行为中,将一个周期内的规范化行为发送到服务器200。
计时器104,用于设置采集周期。
服务器端200的组成部分包括:
活跃度管理器201(相当于实施例2中的接收模块40和确定模块42):用于接收客户端发送的规范化用户行为,计算用户活跃度,对每个用户的缓存过期时间进行管理。
缓存管理器202(相当于实施例2中的管理模块44):用于根据每个用户的缓存过期时刻,对缓存的加载,清除进行管理。
数据加载模块203:如缓存中无缓存数据,则从外部存储(网络,磁盘等)加载数据,加载完成后向缓存管理器请求加入缓存,并为数据分析过程提供数据。
此外,还包括:外部存储模块204、数据分析模块205、内存缓存区206.
客户端100中的事件收集器102的工作具体流程为:
接收分析页面上的鼠标、键盘事件、分析动作、关闭动作。
事件规范化,例如通过以下的方式对各种类别的事件进行规范化处理:
多次鼠标移动事件规范化为一次鼠标移动行为;
多次鼠标点击事件规范化为一次鼠标点击行为;
多次键盘输入事件规范化为一次键盘输入行为;
单次分析动作,例如设置过滤器,设置分析参数等规范化为一次分析行为;
关闭分析窗口,结束分析等动作规范化为结束分析行为。
由定时器驱动,周期性的将规范化后的用户行为发动到服务器端200。发送的用户行为采用“行为类别-发生次数”数据结构。表1是规范化处理后的各个类别用户行为的发生次数:
表1
行为类别 | 发生次数 |
鼠标移动 | 1 |
鼠标点击 | 0 |
分析行为 | 3 |
结束分析行为 | 0 |
活跃度管理器201的工作流程为:
接收客户端100发送的规范化用户行为信息,若用户行为中结束分析行为发生数量大于0,则更新缓存过期表,将此用户的缓存过期时刻设置为0,指示缓存管理器可立即清除此缓存。
若用户行为中结束分析行为发生数量等于0,则计算缓存数据的存活时间,更新缓存数据的最终缓存时间,包括:
计算缓存延长时长:
对于每一个行为类别,延长时长=分权重的类别时长*此类别行为发生次数
总延长时长=每个类别的延时之和
计算本周期延时到期时间=当前时间+总延时时长
缓存实际过期时间=取最大值(上个周期计算的缓存过期时间,本周期计算的缓存过期时间)
更新缓存过期表,设置用户的缓存过期时间为缓存实际过期时间。
缓存管理器202在具体的加载缓存数据的过程中,还需要判断缓存中剩余空间的大小,图11是缓存管理器的工作流程示意图,如图11所示,包括:
S1100、接收加入缓存请求
S1102、若请求的数据已经在缓存中,则拒绝再次加入缓存。
S1104、若请求的数据不在缓存中,则检查剩余缓存空间是否大于数据大小。
S1106、若剩余缓存空间大于数据大小,则将数据加入缓存,并将缓存过期时间更新为:当前时间+初始过期时长。
S1108、若剩余缓存空间小于数据大小,则根据缓存过期表清除不活跃缓存:
读取每一条缓存过期记录,判断缓存过期时间是否小于当前时刻。
若大于或等于,则回到步骤S1108继续进行。
若小于,则从缓存空间清除此缓存,并将其从缓存过期表中删除。
回到步骤S1108继续,直到所有缓存过期表都被检查过一遍结束。
S1110、检查剩余缓存空间是否大于数据大小,若大于则将数据加入缓存,若小于则拒绝加入缓存请求。
实施例5
本申请的实施例还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以用于保存上述实施例1所提供的缓存数据的管理方法所执行的程序代码。
可选地,在本实施例中,上述存储介质可以位于计算机网络中服务器群中的任意一个服务器中,或者位于服务器群中的任意一个服务器中。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:接收客户端采集的用户行为数据,其中,所述用户行为数据为所述客户端的登录账户执行对应的操作行为而生成的数据;依据所述用户行为数据确定所述用户的缓存数据在缓存中的存活时间;依据所述存活时间对所述缓存中的所述缓存数据进行管理。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:在统计周期内,统计所述用户行为数据中各类用户行为所对应的延期时长,得到所述各类用户行为所对应的延期时长之和;其中,所述延期时长用于指示所述存活时间的延长时间;将所述各类用户行为所对应的延期时长之和与所述缓存数据的当前存活时间相加,得到的总和为所述缓存数据在所述缓存中的最终存活时间。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:比较所述总和与所述统计周期的上一个统计周期内得到的存活时间;将两者中的较大者作为所述最终存活时间;其中,所述上一个统计周期内得到的存活时间为所述各类用户行为所对应的延期时长之和与所述缓存数据的已有存活时间相加得到。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:s=a*t*m,其中,a表示与所述每类用户行为的类型对应的权重值,s表示所述延期时长,t表示与所述每类用户行为的类型对应的延期时长,m表示所述每类用户行为的发生次数。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:将在所述缓存数据的处理界面上多次执行的第一指定类型的用户操作事件作为一次用户行为;将在所述处理界面上每次执行的第二指定类型的用户操作事件作为一次用户行为。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:在所述用户行为数据为所述第二指定类型的用户操作事件所对应的用户行为时,依据所述用户行为数据确定所述用户的缓存数据在缓存中的存活时间,包括:将所述用户的缓存数据在所述缓存中的存活时间设置为0;依据所述存活时间对所述缓存中的所述缓存数据进行管理,包括:在所述存活时间设置为0时,将所述用户的缓存数据从所述缓存中删除。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:遍历缓存过期表,其中,该缓存过期表用于存储与用户对应的缓存数据在缓存中的缓存记录;在所述缓存过期表中所述用户的缓存记录所指示存活时间大于当前时刻时,在所述缓存中继续保留所述缓存数据;在所述存活时间小于当前时刻时,则从所述缓存中清除所述缓存数据。
可选地,在本实施例中,上述存储介质可以位于计算机网络中计算机终端群中的任意一个计算机终端中,或者位于移动终端群中的任意一个移动终端中。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:采集用户行为数据,其中,该用户行为数据用于指示所述用户行为数据所对应用户的操作行为;所述用户行为数据为服务器确定所述用户的缓存数据在缓存中的存活时间的依据;将所述用户行为数据发送至服务器。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:将在所述缓存数据的处理界面上多次执行的第一指定类型的用户操作事件作为一次用户行为;将在所述处理界面上每次执行的第二指定类型的用户操作事件作为一次用户行为。
此处需要说明的是,上述计算机终端群中的任意一个可以与网站服务器和扫描器建立通信关系,扫描器可以扫描计算机终端上php执行的web应用程序的值命令。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
实施例6
本申请的实施例还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以用于保存上述实施例3所提供的缓存数据的管理方法所执行的程序代码。
可选地,在本实施例中,上述存储介质可以位于计算机网络中终端群中的任意一个终端中,或者位于终端群中的任意一个终端中。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:采集用户行为数据,其中,该用户行为数据用于指示所述用户行为数据所对应用户的操作行为;所述用户行为数据为服务器确定所述用户的缓存数据在缓存中的存活时间的依据;
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:将所述用户行为数据发送至服务器。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:将在所述缓存数据的处理界面上多次执行的第一指定类型的用户操作事件作为一次用户行为;
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:将在所述处理界面上每次执行的第二指定类型的用户操作事件作为一次用户行为。
此处需要说明的是,上述计算机终端群中的任意一个可以与网站服务器和扫描器建立通信关系,扫描器可以扫描计算机终端上php执行的web应用程序的值命令。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
在本申请的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的服务器和客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。
Claims (27)
1.一种缓存数据的管理方法,其特征在于,包括:
接收客户端采集的用户行为数据,其中,所述用户行为数据为所述客户端的登录账户执行对应的操作行为而生成的数据;
依据所述用户行为数据确定所述用户的缓存数据在缓存中的存活时间;以及
依据所述存活时间对所述缓存中的所述缓存数据进行管理。
2.根据权利要求1所述的方法,其特征在于,依据所述用户行为数据确定所述用户的缓存数据在缓存中的存活时间,包括:
在统计周期内,统计所述用户行为数据中各类用户行为所对应的延期时长,得到所述各类用户行为所对应的延期时长之和;其中,所述延期时长用于指示所述存活时间的延长时间;以及
将所述各类用户行为所对应的延期时长之和与所述缓存数据的当前存活时间相加,得到的总和为所述缓存数据在所述缓存中的最终存活时间。
3.根据权利要求2所述的方法,其特征在于,所述最终存活时间通过以下方式确定:
比较所述总和与所述统计周期的上一个统计周期内得到的存活时间;
将两者中的较大者作为所述最终存活时间;其中,所述上一个统计周期内得到的存活时间为所述各类用户行为所对应的延期时长之和与所述缓存数据的已有存活时间相加得到。
4.根据权利要求2所述的方法,其特征在于,对于每类用户行为,所述延期时长通过以下方式确定:
s=a*t*m,其中,a表示与所述每类用户行为的类型对应的权重值,s表示所述延期时长,t表示与所述每类用户行为的类型对应的延期时长,m表示所述每类用户行为的发生次数。
5.根据权利要求1所述的方法,其特征在于,所述用户行为数据为按照以下方式进行规范化处理后的数据:
将在所述缓存数据的处理界面上多次执行的第一指定类型的用户操作事件作为一次用户行为;
将在所述处理界面上每次执行的第二指定类型的用户操作事件作为一次用户行为。
6.根据权利要求5所述的方法,其特征在于,所述第一指定类型的用户操作事件包括以下之一:
鼠标移动事件、鼠标点击事件、键盘输入事件。
7.根据权利要求5所述的方法,其特征在于,所述第二指定类型的用户操作事件包括以下之一:
对所述处理界面的关闭操作、在对所述缓存数据进行指定处理时的操作行为。
8.根据权利要求5所述的方法,其特征在于,
在所述用户行为数据为所述第二指定类型的用户操作事件所对应的用户行为时,依据所述用户行为数据确定所述用户的缓存数据在缓存中的存活时间,包括:将所述用户的缓存数据在所述缓存中的存活时间设置为0;
依据所述存活时间对所述缓存中的所述缓存数据进行管理,包括:在所述存活时间设置为0时,将所述用户的缓存数据从所述缓存中删除。
9.根据权利要求1至8中任一项所述的方法,其特征在于,依据所述存活时间对所述缓存中的所述缓存数据进行管理,包括:
遍历缓存过期表,其中,该缓存过期表用于存储与用户对应的缓存数据在缓存中的缓存记录;
在所述缓存过期表中所述用户的缓存记录所指示存活时间大于当前时刻时,在所述缓存中继续保留所述缓存数据;在所述存活时间小于当前时刻时,则从所述缓存中清除所述缓存数据。
10.一种缓存数据的管理方法,其特征在于,包括:
采集用户行为数据,其中,该用户行为数据用于指示所述用户行为数据所对应用户的操作行为;所述用户行为数据为服务器确定所述用户的缓存数据在缓存中的存活时间的依据;
将所述用户行为数据发送至服务器。
11.根据权利要求10所述的方法,其特征在于,将所述用户行为数据发送至服务器之前,所述方法还包括:按照以下方式对所述用户行为数据进行规范化处理后:
将在所述缓存数据的处理界面上多次执行的第一指定类型的用户操作事件作为一次用户行为;
将在所述处理界面上每次执行的第二指定类型的用户操作事件作为一次用户行为。
12.根据权利要求11所述的方法,其特征在于,所述第一指定类型的用户操作事件包括以下之一:
鼠标移动事件、鼠标点击事件、键盘输入事件。
13.根据权利要求11所述的方法,其特征在于,所述第二指定类型的用户操作事件包括以下之一:
对所述处理界面的关闭操作、在对所述缓存数据进行指定处理时的操作行为。
14.一种缓存数据的管理装置,其特征在于,包括:
接收模块,用于接收客户端采集的用户行为数据,其中,所述用户行为数据为所述客户端的登录账户执行对应的操作行为而生成的数据;
确定模块,用于依据所述用户行为数据确定所述用户的缓存数据在缓存中的存活时间;
管理模块,用于依据所述存活时间对所述缓存中的所述缓存数据进行管理。
15.根据权利要求14所述的装置,其特征在于,所述确定模块包括:
统计单元,用于在统计周期内,统计所述用户行为数据中各类用户行为所对应的延期时长,得到所述各类用户行为所对应的延期时长之和;其中,所述延期时长用于指示所述存活时间的延长时间;
计算单元,用于将所述各类用户行为所对应的延期时长之和与所述缓存数据的当前存活时间相加,得到的总和为所述缓存数据在所述缓存中的最终存活时间。
16.根据权利要求15所述的装置,其特征在于,所述计算单元包括:
比较子单元,用于比较所述总和与所述统计周期的上一个统计周期内得到的存活时间;
确定子单元,用于将两者中的较大者作为所述最终存活时间;其中,所述上一个统计周期内得到的存活时间为所述各类用户行为所对应的延期时长之和与所述缓存数据的已有存活时间相加得到。
17.根据权利要求15所述的装置,其特征在于,所述统计单元,用于通过以下公式确定每类用户行为的延期时长:
s=a*t*m,其中,a表示与所述每类用户行为的类型对应的权重值,s表示所述延期时长,t表示与所述每类用户行为的类型对应的延期时长,m表示所述每类用户行为的发生次数。
18.根据权利要求14所述的装置,其特征在于,所述接收模块包括:
第一设置单元,用于将在所述缓存数据的处理界面上多次执行的第一指定类型的用户操作事件作为一次用户行为;
第二设置单元,用于将在所述处理界面上每次执行的第二指定类型的用户操作事件作为一次用户行为。
19.根据权利要求18所述的装置,其特征在于,所述第一指定类型的用户操作事件包括以下之一:
鼠标移动事件、鼠标点击事件、键盘输入事件。
20.根据权利要求18所述的装置,其特征在于,所述第二指定类型的用户操作事件包括以下之一:
对所述处理界面的关闭操作、在对所述缓存数据进行指定处理时的操作行为。
21.根据权利要求18所述的装置,其特征在于,所述确定模块包括:
第三设置单元,用于在所述用户行为数据为所述第二指定类型的用户操作事件所对应的用户行为时,将所述用户的缓存数据在所述缓存中的存活时间设置为0。
22.根据权利要求21所述的装置,其特征在于,所述管理模块包括:
删除单元,用于在所述存活时间设置为0时,将所述用户的缓存数据从所述缓存中删除。
23.根据权利要求14至22中任一项所述的装置,其特征在于,所述管理模块包括:
遍历单元,用于遍历缓存过期表,其中,该缓存过期表用于存储与用户对应的缓存数据在缓存中的缓存记录;
处理单元,用于在所述缓存过期表中所述用户的缓存记录所指示存活时间大于当前时刻时,在所述缓存中继续保留所述缓存数据;在所述存活时间小于当前时刻时,则从所述缓存中清除所述缓存数据。
24.一种缓存数据的管理装置,其特征在于,包括:
采集模块,用于采集用户行为数据,其中,该用户行为数据用于指示所述用户行为数据所对应用户的操作行为;所述用户行为数据为服务器确定所述用户的缓存数据在缓存中的存活时间的依据;
发送模块,用于将所述用户行为数据发送至服务器。
25.根据权利要求24所述的装置,其特征在于,所述装置还包括:
第一设置模块,用于在所述发送模块将所述用户行为数据发送至服务器之前,按照以下方式对所述用户行为数据进行规范化处理:将在所述缓存数据的处理界面上多次执行的第一指定类型的用户操作事件作为一次用户行为;
第二设置模块,用于在所述发送模块将所述用户行为数据发送至服务器之前,按照以下方式对所述用户行为数据进行规范化处理:将在所述处理界面上每次执行的第二指定类型的用户操作事件作为一次用户行为。
26.根据权利要求25所述的装置,其特征在于,所述第一指定类型的用户操作事件包括以下之一:
鼠标移动事件、鼠标点击事件、键盘输入事件。
27.根据权利要求25所述的装置,其特征在于,所述第二指定类型的用户操作事件包括以下之一:
对所述处理界面的关闭操作、在对所述缓存数据进行指定处理时的操作行为。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510781765.8A CN106708417B (zh) | 2015-11-13 | 2015-11-13 | 缓存数据的管理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510781765.8A CN106708417B (zh) | 2015-11-13 | 2015-11-13 | 缓存数据的管理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106708417A true CN106708417A (zh) | 2017-05-24 |
CN106708417B CN106708417B (zh) | 2020-08-11 |
Family
ID=58930840
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510781765.8A Active CN106708417B (zh) | 2015-11-13 | 2015-11-13 | 缓存数据的管理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106708417B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019000626A1 (zh) * | 2017-06-28 | 2019-01-03 | 上海壹账通金融科技有限公司 | 接口调用方法、系统、电子装置及计算机可读存储介质 |
WO2019028987A1 (zh) * | 2017-08-10 | 2019-02-14 | 上海壹账通金融科技有限公司 | 数据处理方法、电子设备及计算机可读存储介质 |
CN110417836A (zh) * | 2018-04-28 | 2019-11-05 | 阿里巴巴集团控股有限公司 | 一种业务数据的处理方法、处理装置和处理系统 |
CN112866811A (zh) * | 2021-01-20 | 2021-05-28 | 深圳创维-Rgb电子有限公司 | 一种智能电视控制方法、装置、智能电视及可读存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101694639A (zh) * | 2009-10-15 | 2010-04-14 | 清华大学 | 一种计算机数据的缓存方法 |
CN102982082A (zh) * | 2011-11-01 | 2013-03-20 | 微软公司 | 用于安全调整的智能高速缓存 |
CN104133880A (zh) * | 2014-07-25 | 2014-11-05 | 广东睿江科技有限公司 | 一种设置文件缓存时间的方法与装置 |
JP2015153210A (ja) * | 2014-02-17 | 2015-08-24 | 日本電信電話株式会社 | ユーザ操作のログ記録方法、そのプログラムおよび装置 |
-
2015
- 2015-11-13 CN CN201510781765.8A patent/CN106708417B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101694639A (zh) * | 2009-10-15 | 2010-04-14 | 清华大学 | 一种计算机数据的缓存方法 |
CN102982082A (zh) * | 2011-11-01 | 2013-03-20 | 微软公司 | 用于安全调整的智能高速缓存 |
JP2015153210A (ja) * | 2014-02-17 | 2015-08-24 | 日本電信電話株式会社 | ユーザ操作のログ記録方法、そのプログラムおよび装置 |
CN104133880A (zh) * | 2014-07-25 | 2014-11-05 | 广东睿江科技有限公司 | 一种设置文件缓存时间的方法与装置 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019000626A1 (zh) * | 2017-06-28 | 2019-01-03 | 上海壹账通金融科技有限公司 | 接口调用方法、系统、电子装置及计算机可读存储介质 |
WO2019028987A1 (zh) * | 2017-08-10 | 2019-02-14 | 上海壹账通金融科技有限公司 | 数据处理方法、电子设备及计算机可读存储介质 |
CN110417836A (zh) * | 2018-04-28 | 2019-11-05 | 阿里巴巴集团控股有限公司 | 一种业务数据的处理方法、处理装置和处理系统 |
CN112866811A (zh) * | 2021-01-20 | 2021-05-28 | 深圳创维-Rgb电子有限公司 | 一种智能电视控制方法、装置、智能电视及可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN106708417B (zh) | 2020-08-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108134691B (zh) | 模型构建方法、网络资源预加载方法、装置、介质及终端 | |
CN106502902B (zh) | web页面运行效率监测方法及装置 | |
CN103685502B (zh) | 一种消息推送方法、装置及系统 | |
Hernández-Campos et al. | Tracking the evolution of web traffic: 1995-2003 | |
CN106708417A (zh) | 缓存数据的管理方法及装置 | |
CN102681999A (zh) | 一种用户行为信息收集及信息发送方法及装置 | |
CN104102875B (zh) | 基于加权朴素贝叶斯分类器的软件服务质量监控方法及系统 | |
CN104917739B (zh) | 虚假账号的识别方法及装置 | |
CN104869155B (zh) | 数据审计方法及装置 | |
CN104579854B (zh) | 众包测试方法 | |
CN105340311B (zh) | 网络设备、网络业务预测装置和方法 | |
CN107463904A (zh) | 一种确定事件周期值的方法及装置 | |
CN105869035A (zh) | 一种移动用户信用评估方法及装置 | |
CN105824834A (zh) | 搜索流量作弊行为识别方法及装置 | |
CA2474826A1 (en) | Data logging for resident applications within portable electronic devices | |
Zhao et al. | Modeling web browsing on mobile internet | |
CN103312566A (zh) | 检测报文端口拥塞的方法及装置 | |
CN106874316A (zh) | 一种用户汇总数据的展示方法、装置及服务器 | |
CN111047338A (zh) | 用户活跃度预测方法、预测系统及介质 | |
CN110457223A (zh) | 灰度测试引流方法、装置、代理服务器及可读存储介质 | |
CN105429792B (zh) | 用户行为流量获取方法及装置、用户行为分析方法及系统 | |
CN101252480B (zh) | 一种建立多媒体网页浏览业务模型的实现方法 | |
CN104714718B (zh) | 交互应用中标记可操作图标的方法和装置 | |
CN109032954A (zh) | 一种a/b测试的用户选取方法、装置、存储介质及终端 | |
CN115714692A (zh) | 一种监测网卡的模型训练方法及其应用、系统和电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20211117 Address after: Room 507, floor 5, building 3, No. 969, Wenyi West Road, Wuchang Street, Yuhang District, Hangzhou City, Zhejiang Province Patentee after: ZHEJIANG TMALL TECHNOLOGY Co.,Ltd. Address before: Box 847, four, Grand Cayman capital, Cayman Islands, UK Patentee before: ALIBABA GROUP HOLDING Ltd. |
|
TR01 | Transfer of patent right |