信息推荐方法及装置制造方法及图纸

技术编号:15188387 阅读:94 留言:0更新日期:2017-04-19 13:42
本发明专利技术公开了一种信息推荐方法及装置,属于信息推荐技术领域。所述方法包括:在获取到包括用户标识ID和推荐信息的信息ID的目标Key之后;读取n个内存空间的公共包头中的索引信息;检测索引信息所对应的第i个内存空间是否达到存储上限;若第i个内存空间达到存储上限,则将当前处于有效读写状态的内存空间从第i个内存空间切换为第j个内存空间,删除第j个内存空间中存储的Key,存储目标Key至第j个内存空间,并推荐目标Key所对应的推荐信息至用户ID所对应的用户终端;第j个内存空间是n个内存空间中按照预设轮询顺序轮询时第i个内存空间的后一个内存空间;更新索引信息为第j个内存空间的标识;解决了现有技术中所需的内存空间较大的问题。

【技术实现步骤摘要】

本专利技术实施例涉及信息推荐
,特别涉及一种信息推荐方法及装置
技术介绍
现有技术中,服务器经常需要为用户推荐信息。比如,在视频网站中,视频服务器会根据用户的喜好向用户推荐视频。现有的一种信息推荐方法包括:服务器接收用户ID(Identification)以及推荐信息的信息ID;检测存储的Key-List中该用户ID所对应的List中是否包含该信息ID;若未包含,则存储该信息ID至该用户ID所对应的List中。其中,在Key-List中Key为用户ID,List中包括推荐给用户ID所对应的用户终端的各个推荐信息的信息ID。随着时间的推移,用户会不断增多,向用户推荐的推荐信息也不断增多,因此这就导致服务器存储Key-List所需的内存空间较大。
技术实现思路
为了解决现有技术中存在的问题,本专利技术实施例提供了一种信息推荐方法及装置。技术方案如下:根据本专利技术实施例的第一方面,提供一种信息推荐方法,该方法包括:获取目标键Key,所述目标Key包括用户标识ID和推荐信息的信息ID;读取n个内存空间的公共包头中的索引信息,所述索引信息中存储有所述n个内存空间中当前处于有效读写状态的第i个内存空间的标识;i为整数且0≤i≤n-1;检测所述索引信息所对应的所述第i个内存空间是否达到存储上限;若所述第i个内存空间达到存储上限,则将当前处于有效读写状态的内存空间从所述第i个内存空间切换为第j个内存空间,删除所述第j个内存空间中存储的Key,存储所述目标Key至所述第j个内存空间,并推荐所述目标Key所对应的所述推荐信息至所述用户ID所对应的用户终端;所述第j个内存空间是所述n个内存空间中按照预设轮询顺序轮询时所述第i个内存空间的后一个内存空间;j为整数且0≤j≤n-1;更新所述索引信息为所述第j个内存空间的标识。根据本专利技术实施例的第二方面,提供一种信息推荐装置,该装置包括:第一获取模块,用于获取目标键Key,所述目标Key包括用户标识ID和推荐信息的信息ID;第一读取模块,用于读取n个内存空间的公共包头中的索引信息,所述索引信息中存储有所述n个内存空间中当前处于有效读写状态的第i个内存空间的标识;i为整数且0≤i≤n-1;第一检测模块,用于检测所述索引信息所对应的所述第i个内存空间是否达到存储上限;推荐模块,用于在所述第一检测模块的检测结果为所述第i个内存空间达到存储上限时,将当前处于有效读写状态的内存空间从所述第i个内存空间切换为第j个内存空间,删除所述第j个内存空间中存储的Key,存储所述目标Key至所述第j个内存空间,并推荐所述目标Key所对应的所述推荐信息至所述用户ID所对应的用户终端;所述第j个内存空间是所述n个内存空间中按照预设轮询顺序轮询时所述第i个内存空间的后一个内存空间;j为整数且0≤j≤n-1;更新模块,用于更新所述索引信息为所述第j个内存空间的标识。本专利技术实施例提供的技术方案带来的有益效果是:通过在获取到包括用户ID和信息ID的目标Key之后,读取n个内存空间的公共包头中的索引信息,并在索引信息所对应的第i个内存空间达到存储上限时,将当前处于有效读写状态的内存空间从第i个内存空间切换为第j个内存空间,删除第j个内存空间中存储的Key,存储目标Key至第j个内存空间,并推荐目标Key所对应的推荐信息至用户ID所对应的用户终端;也即在信息推荐过程中当第j个内存空间已经在历史时间段存满较早时间的Key时,可以删除第j个内存空间中已经存储的较早时间的Key,并存储最新的目标Key,这样即使随着时间的推移Key不断增多,但是也只需占用n个内存空间进行存储,解决了现有技术中随着用户以及推荐信息的增多,服务器耗用的内存空间较大的问题;达到了可以减少所需耗用的内存空间的效果。附图说明为了更清楚地说明本专利技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术一个实施例提供的信息推荐方法的流程图;图2是本专利技术另一实施例提供的数据结构的示意图;图3A是本专利技术另一个实施例提供的信息推荐方法的流程图;图3B是本专利技术另一实施例提供的数据结构的另一示意图;图3C是本专利技术另一实施例提供的多进程的服务器中的数据的存储示意图;图3D是本专利技术另一实施例提供的确定目标进程的流程图;图4是本专利技术各个实施例所涉及的服务器集群的示意图;图5是本专利技术一个实施例提供的信息推荐装置的示意图;图6是本专利技术一个实施例提供的服务器的示意图。具体实施方式为使本专利技术的目的、技术方案和优点更加清楚,下面将结合附图对本专利技术实施方式作进一步地详细描述。请参考图1,其示出了本专利技术一个实施例提供的信息推荐方法的方法流程图,如图1所示,该信息推荐方法可以包括:步骤101,获取目标键Key,目标Key包括用户标识ID和推荐信息的信息ID。步骤102,读取n个内存空间的公共包头中的索引信息。索引信息中存储有n个内存空间中当前处于有效读写状态的第i个内存空间的标识;i为整数且0≤i≤n-1。步骤103,检测索引信息所对应的第i个内存空间是否达到存储上限。步骤104,若第i个内存空间达到存储上限,则将当前处于有效读写状态的内存空间从第i个内存空间切换为第j个内存空间,删除第j个内存空间中存储的Key,存储目标Key至第j个内存空间,并推荐目标Key所对应的推荐信息至用户ID所对应的用户终端。第j个内存空间是n个内存空间中按照预设轮询顺序轮询时第i个内存空间的后一个内存空间;j为整数且0≤j≤n-1。步骤105,更新索引信息为第j个内存空间的标识。比如,以n=3为例,当i=1时,在接收到目标Key之后,若第1个内存空间达到存储上限,则在第2个内存空间中已经存满Key时,服务器可以删除第2个内存空间中存储的Key,并将目标Key存储至第2个内存空间;当i=2时,在接收到目标Key之后,若第2个内存空间达到存储上限,则在第0个内存空间存满Key时,服务器可以删除第0个内存空间中存储的Key,并存储目标Key至第0个内存空间;类似的,若i=0,则在接收到目标Key之后,若第0个内存空间达到存储上限,则在第0个内存空间中已经存满Key时,服务器可以删除第1个内存空间中存储的Key,并存储目标Key至第1个内存空间。综上所述,本实施例提供的信息推荐方法,通过在获取到包括用户ID和信息ID的目标Key之后,读取n个内存空间的公共包头中的索引信息,并在索引信息所对应的第i个内存空间达到存储上限时,将当前处于有效读写状态的内存空间从第i个内存空间切换为第j个内存空间,删除第j个内存空间中存储的Key,存储目标Key至第j个内存空间,并推荐目标Key所对应的推荐信息至用户ID所对应的用户终端;也即在信息推荐过程中当第j个内存空间已经在历史时间段存满较早时间的Key时,可以删除第j个内存空间中已经存储的较早时间的Key,并存储最新的目标Key,这样即使随着时间的推移Key不断增多,但是也只需占用n个内存空间进行存储,解决了现有技术中随着用户以及推荐信息的增多,服务器耗用的内存空间较大的问题;达到了可以减少所需耗用的本文档来自技高网...
信息推荐方法及装置

【技术保护点】
一种信息推荐方法,其特征在于,所述方法包括:获取目标键Key,所述目标Key包括用户标识ID和推荐信息的信息ID;读取n个内存空间的公共包头中的索引信息,所述索引信息中存储有所述n个内存空间中当前处于有效读写状态的第i个内存空间的标识;i为整数且0≤i≤n‑1;检测所述索引信息所对应的所述第i个内存空间是否达到存储上限;若所述第i个内存空间达到存储上限,则将当前处于有效读写状态的内存空间从所述第i个内存空间切换为第j个内存空间,删除所述第j个内存空间中存储的Key,存储所述目标Key至所述第j个内存空间,并推荐所述目标Key所对应的所述推荐信息至所述用户ID所对应的用户终端;所述第j个内存空间是所述n个内存空间中按照预设轮询顺序轮询时所述第i个内存空间的后一个内存空间;j为整数且0≤j≤n‑1;更新所述索引信息为所述第j个内存空间的标识。

【技术特征摘要】
1.一种信息推荐方法,其特征在于,所述方法包括:获取目标键Key,所述目标Key包括用户标识ID和推荐信息的信息ID;读取n个内存空间的公共包头中的索引信息,所述索引信息中存储有所述n个内存空间中当前处于有效读写状态的第i个内存空间的标识;i为整数且0≤i≤n-1;检测所述索引信息所对应的所述第i个内存空间是否达到存储上限;若所述第i个内存空间达到存储上限,则将当前处于有效读写状态的内存空间从所述第i个内存空间切换为第j个内存空间,删除所述第j个内存空间中存储的Key,存储所述目标Key至所述第j个内存空间,并推荐所述目标Key所对应的所述推荐信息至所述用户ID所对应的用户终端;所述第j个内存空间是所述n个内存空间中按照预设轮询顺序轮询时所述第i个内存空间的后一个内存空间;j为整数且0≤j≤n-1;更新所述索引信息为所述第j个内存空间的标识。2.根据权利要求1所述的方法,其特征在于,所述读取n个内存空间的公共包头中的索引信息,包括:确定所述目标Key在k个进程中所对应的目标进程,k为大于等于2的整数;读取所述目标进程所对应的n个内存空间的公共包头中的所述索引信息。3.根据权利要求2所述的方法,其特征在于,所述确定所述目标Key在k个进程中所对应的目标进程,包括:计算所述目标Key的哈希值;计算所述哈希值和k的模值,将所述模值所对应的进程确定为所述目标进程。4.根据权利要求1至3任一所述的方法,其特征在于,每个内存空间的数据包头中包括所述内存空间的容量上限以及当前已用的容量;所述检测所述索引信息所对应的所述第i个内存空间是否达到存储上限,包括:根据所述第i个内存空间的数据包头检测所述第i个内存空间中已用的容量是否达到容量上限;若检测结果为达到所述容量上限,则确定所述第i个内存空间达到所述存储上限;若检测结果为未达到所述容量上限,则确定所述第i个内存空间未达到所述存储上限。5.根据权利要求1至3任一所述的方法,其特征在于,所述检测所述索引信息所对应的所述第i个内存空间是否达到存储上限之前,所述方法还包括:读取所述公共包头中的切换时间;所述切换时间为最近一次更新所述索引信息的时间,或者,从第h个内存空间切换至第i个内存空间时第一次存储Key的时间;所述第h个内存空间是所述n个内存空间中按照所述预设轮询顺序轮询时所述第i个内存空间的前一个内存空间;h为整数且0≤h≤n-1;获取所述切换时间与当前时刻之间的时间差;若所述时间差未达到时间阈值,则检测所述第i个内存空间以及所述第h个内存空间中是否存储有所述目标Key;若所述时间差达到所述时间阈值,则检测所述第i个内存空间中是否存储有所述目标Key;若检测结果为未存储有所述目标Key,则执行所述检测所述索引信息所对应的所述第i个内存空间是否达到存储上限的步骤;若检测结果为存储有所述目标Key,则流程结束。6.一种信息推荐装置,其特征在于,所述装置包括:第一获取模块,用于获取目标键Key,所述目标Ke...

【专利技术属性】
技术研发人员:李会珠卫磊
申请(专利权)人:腾讯科技北京有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1