面向微服务的海量资讯热度排行更新方法及平台技术

技术编号:20866507 阅读:38 留言:0更新日期:2019-04-17 09:21
本发明专利技术提供了面向微服务的海量资讯热度排行更新方法及平台,所述海量资讯热度排行更新方法搭建于微服务架构的分布式计算平台上,包括以下步骤:实时接收推送的资讯消息,初始化所述资讯消息的资讯热度;将接收到的所有资讯消息按照资讯热度进行排序,得到热度排行;实时接收资讯消息的用户行为日志;根据所述用户行为日志计算该资讯消息的资讯热度,对所述热度排行进行更新。该方法能够对应用服务器进行水平扩展,适用于资讯数量呈指数级增长情况下的资讯热度排行的及时更新。

【技术实现步骤摘要】
面向微服务的海量资讯热度排行更新方法及平台
本专利技术属于计算机
,具体涉及面向微服务的海量资讯热度排行更新方法及平台。
技术介绍
资讯热度排行,即对已有的资讯集合,通过结合用户的兴趣度以及资讯的新颖度等计算得到的实时排行榜。资讯热度排行经常被使用在个性化推荐系统、新闻首页滚动资讯榜单等场景。目前已有的资讯热度排行算法主要是在普通单机上完成热度排行的计算但是近年来,随着互联网的爆炸性发展,全球信息量的增长速度远远快于我们处理信息的能力,资讯数量的指数级增长使得传统的计算模式在实时性上无法满足当前用户的需求。同时,资讯数量的增长也使得在单机无法在有限时间内计算得出结果。例如每隔5分钟计算得到最热门的资讯消息榜单,而传统的计算模式每一次计算全量资讯消息排行耗时超过5分钟。另外,由于用户数量以及资讯数量的不确定性,传统的后台系统无法有效进行水平扩展,以应对短时间内大量的用户请求。
技术实现思路
针对现有技术中的缺陷,本专利技术提供一种面向微服务的海量资讯热度排行更新方法及平台,能够对应用服务器进行水平扩展,适用于资讯数量呈指数级增长情况下的资讯热度排行的及时更新。第一方面,一种面向微服务的海量资讯热度排行更新方法,所述海量资讯热度排行更新方法搭建于微服务架构的分布式计算平台上,包括以下步骤:实时接收推送的资讯消息,初始化所述资讯消息的资讯热度;将接收到的所有资讯消息按照资讯热度进行排序,得到热度排行;实时接收资讯消息的用户行为日志;根据所述用户行为日志计算该资讯消息的资讯热度,对所述热度排行进行更新。优选地,所述用户行为日志由利用所述分布式计算平台的窗口函数统计用户的行为数据所得。优选地,所述根据所述用户行为日志计算该资讯消息的资讯热度,对所述热度排行进行更新具体包括:针对每个资讯消息设置多个标准行为数据及其对应的权重值;获取该资讯消息的用户行为日志中包含的行为数据,读取与所述行为数据对应的标准行为数据的权重值;根据该资讯消息中用户行为日志的行为数据以及对应的权重值计算反馈贡献值;利用预设的时间衰减因子对所述反馈贡献值进行计算,得到该资讯消息的资讯热度;根据所述资讯热度对所述热度排行进行更新。优选地,所述标准行为数据包括点击次数、收藏次数和分享次数。所述反馈贡献值的计算公式如下:S(Users)=Weight(click)*click+Weight(favor)*favor+Weight(share)*share;其中,S(Users)为反馈贡献值,click为点击次数,Weight(click)为点击次数对应的权重值,favor为收藏次数,Weight(favor)为收藏次数对应的权重值,share为分享次数,Weight(share)为分享次数对应的权重值。优选地,所述资讯热度的计算公式如下:Score=(S(Type)+S(Users))/T(Time);其中,Score为资讯热度,S(Type)为预设的资讯标准权重;T(Time)为所述时间衰减因子:T(Time)=e^(k*(T1–T0));其中,T0为资讯消息的发布时间,T1是当前时间,k为常量参数。第二方面,一种基于微服务架构的分布式计算平台,所述分布式计算平台执行以下步骤:实时接收推送的资讯消息,初始化所述资讯消息的资讯热度;将接收到的所有资讯消息按照资讯热度进行排序,得到热度排行;实时接收资讯消息的用户行为日志;根据所述用户行为日志计算该资讯消息的资讯热度,对所述热度排行进行更新。优选地,所述用户行为日志由利用所述分布式计算平台的窗口函数统计用户的行为数据。优选地,所述根据所述用户行为日志计算该资讯消息的资讯热度,对所述热度排行进行更新具体包括:针对每个资讯消息设置多个标准行为数据及其对应的权重值;获取该资讯消息的用户行为日志中包含的行为数据,读取与所述行为数据对应的标准行为数据的权重值;根据该资讯消息中用户行为日志的行为数据以及对应的权重值计算反馈贡献值;利用预设的时间衰减因子对所述反馈贡献值进行计算,得到该资讯消息的资讯热度;根据所述资讯热度对所述热度排行进行更新。优选地,所述标准行为数据包括点击次数、收藏次数和分享次数。所述反馈贡献值的计算公式如下:S(Users)=Weight(click)*click+Weight(favor)*favor+Weight(share)*share;其中,S(Users)为反馈贡献值,click为点击次数,Weight(click)为点击次数对应的权重值,favor为收藏次数,Weight(favor)为收藏次数对应的权重值,share为分享次数,Weight(share)为分享次数对应的权重值。优选地,所述资讯热度的计算公式如下:Score=(S(Type)+S(Users))/T(Time);其中,Score为资讯热度,S(Type)为预设的资讯标准权重;T(Time)为所述时间衰减因子:T(Time)=e^(k*(T1–T0));其中,T0为资讯消息的发布时间,T1是当前时间,k为常量参数。由上述技术方案可知,本专利技术提供的面向微服务的海量资讯热度排行更新方法及平台,能够对应用服务器进行水平扩展,适用于资讯数量呈指数级增长情况下的资讯热度排行的及时更新。附图说明为了更清楚地说明本专利技术具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍。在所有附图中,类似的元件或部分一般由类似的附图标记标识。附图中,各元件或部分并不一定按照实际的比例绘制。图1为本申请实施例一提供的海量资讯热度排行更新方法的流程图。图2为本申请实施例二提供的热度排行更新方法的流程图。具体实施方式下面将结合附图对本专利技术技术方案的实施例进行详细的描述。以下实施例仅用于更加清楚地说明本专利技术的技术方案,因此只作为示例,而不能以此来限制本专利技术的保护范围。需要注意的是,除非另有说明,本申请使用的技术术语或者科学术语应当为本专利技术所属领域技术人员所理解的通常意义。实施例一:一种面向微服务的海量资讯热度排行更新方法,参见图1,所述海量资讯热度排行更新方法搭建于微服务架构的分布式计算平台上,参见图1,包括以下步骤:S1:实时接收推送的资讯消息,初始化所述资讯消息的资讯热度;具体地,所述微服务架构的分布式计算平台为大数据实时计算平台,例如ApacheFlink,ApacheBlink,这些分布式计算平台数据流转的实时性可以达到毫秒级,能够满足资讯数量呈指数级增长情况下的资讯消息的热度排行计算。步骤S1在接收到新的资讯消息时,对资讯消息的资讯热度进行初始化,给资讯消息的资讯热度定义一个初始值。S2:将接收到的所有资讯消息按照资讯热度进行排序,得到热度排行;具体地,热度排行中资讯消息的资讯热度从前到后依次降低。S3:实时接收资讯消息的用户行为日志;具体地,用户行为日志是指用户每次访问网络时所有的行为数据,包括访问、浏览、搜索、点击、收藏、分享等多种行为数据。S4:根据所述用户行为日志计算该资讯消息的资讯热度,对所述热度排行进行更新。具体地,该方法根据用户行为日志中的行为数据进行实时(或定时,如每隔5分钟)计算每一个资讯消息的资讯热度,并进行热度排行更新。所述用户行为日志由日志采集模块提供,常见的日志采本文档来自技高网...

【技术保护点】
1.一种面向微服务的海量资讯热度排行更新方法,其特征在于,所述海量资讯热度排行更新方法搭建于微服务架构的分布式计算平台上,包括以下步骤:实时接收推送的资讯消息,初始化所述资讯消息的资讯热度;将接收到的所有资讯消息按照资讯热度进行排序,得到热度排行;实时接收资讯消息的用户行为日志;根据所述用户行为日志计算该资讯消息的资讯热度,对所述热度排行进行更新。

【技术特征摘要】
1.一种面向微服务的海量资讯热度排行更新方法,其特征在于,所述海量资讯热度排行更新方法搭建于微服务架构的分布式计算平台上,包括以下步骤:实时接收推送的资讯消息,初始化所述资讯消息的资讯热度;将接收到的所有资讯消息按照资讯热度进行排序,得到热度排行;实时接收资讯消息的用户行为日志;根据所述用户行为日志计算该资讯消息的资讯热度,对所述热度排行进行更新。2.根据权利要求1所述面向微服务的海量资讯热度排行更新方法,其特征在于,所述用户行为日志由利用所述分布式计算平台的窗口函数统计用户的行为数据所得。3.根据权利要求2所述面向微服务的海量资讯热度排行更新方法,其特征在于,所述根据所述用户行为日志计算该资讯消息的资讯热度,对所述热度排行进行更新具体包括:针对每个资讯消息设置多个标准行为数据及其对应的权重值;获取该资讯消息的用户行为日志中包含的行为数据,读取与所述行为数据对应的标准行为数据的权重值;根据该资讯消息中用户行为日志的行为数据以及对应的权重值计算反馈贡献值;利用预设的时间衰减因子对所述反馈贡献值进行计算,得到该资讯消息的资讯热度;根据所述资讯热度对所述热度排行进行更新。4.根据权利要求3所述面向微服务的海量资讯热度排行更新方法,其特征在于,所述标准行为数据包括点击次数、收藏次数和分享次数;所述反馈贡献值的计算公式如下:S(Users)=Weight(click)*click+Weight(favor)*favor+Weight(share)*share;其中,S(Users)为反馈贡献值,click为点击次数,Weight(click)为点击次数对应的权重值,favor为收藏次数,Weight(favor)为收藏次数对应的权重值,share为分享次数,Weight(share)为分享次数对应的权重值。5.根据权利要求4所述面向微服务的海量资讯热度排行更新方法,其特征在于,所述资讯热度的计算公式如下:Score=(S(Type)+S(Users))/T(Time);其中,Score为资讯热度,S(Type)为预设的资讯标准权重;T(Time)为所述时间衰减因子:T(Time)=e^(k*(T1–T0));其中,T0为资讯消息的...

【专利技术属性】
技术研发人员:柴志伟许涵洋
申请(专利权)人:宁波深擎信息科技有限公司上海深擎信息科技有限公司
类型:发明
国别省市:浙江,33

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

1