热点流量处理方法及系统技术方案

技术编号:31087610 阅读:12 留言:0更新日期:2021-12-01 12:44
本申请公开了一种热点流量处理方法,该方法包括:实时采集各个直播间的流量数据,并写入异步队列;通过滑动窗口对所述异步队列中的流量数据进行分割,并从当前窗口内的流量数据中根据访问频率得到当前热点房间信息;将所述热点房间信息对应的直播数据存放至本地缓存;当接收到外部访问请求时,根据访问房间标识在所述热点房间信息中进行匹配,在匹配成功时,直接从所述本地缓存中返回对应的直播数据。本申请还公开了一种热点流量处理系统、电子装置和计算机可读存储介质。由此,能够避免热点流量访问内存数据库,达到削峰的效果,保证在流量洪峰下也能稳定持续的提供服务。量洪峰下也能稳定持续的提供服务。量洪峰下也能稳定持续的提供服务。

【技术实现步骤摘要】
热点流量处理方法及系统


[0001]本申请涉及直播
,尤其涉及一种热点流量处理方法、系统、电子装置及计算机可读存储介质。

技术介绍

[0002]直播间作为直播内容及互动的载体,地位非常重要。直播场景下海量用户可能会同时访问同一个房间,这会给技术系统造成瞬间且集中的压力,这种情况被称为热点,热点会给储存造成致命冲击。
[0003]为了应对热点流量的挑战,一般会将数据存放到内存数据库中提供高性能的读写服务。但是当大量用户同时访问同一个房间时,所有访问压力会集中到内存数据库的某一个点上,集中的压力可能使内存数据库面临崩溃的风险。也就是说常规的技术系统无法应对热点挑战,在热点洪峰下会面临崩溃风险。

技术实现思路

[0004]本申请的主要目的在于提出一种热点流量处理方法、系统、电子装置及计算机可读存储介质,旨在解决如何降低热点流量对内存数据库造成的压力的问题。
[0005]为实现上述目的,本申请实施例提供了一种热点流量处理方法,所述方法包括:
[0006]实时采集各个直播间的流量数据,并写入异步队列;
[0007]通过滑动窗口对所述异步队列中的流量数据进行分割,并从当前窗口内的流量数据中根据访问频率得到当前热点房间信息;
[0008]将所述热点房间信息对应的直播数据存放至本地缓存;及
[0009]当接收到外部访问请求时,根据访问房间标识在所述热点房间信息中进行匹配,在匹配成功时,直接从所述本地缓存中返回对应的直播数据。
[0010]可选地,所述方法还包括:
[0011]当匹配失败时,访问内存数据库得到所述访问房间标识对应的直播数据并返回。
[0012]可选地,所述方法还包括:
[0013]定时或根据数据变更消息访问所述内存数据库,以更新所述本地缓存中的所述直播数据。
[0014]可选地,所述实时采集各个直播间的流量数据包括:
[0015]通过接口埋点实时采集接口流量数据,得到各个直播间的流量数据。
[0016]可选地,所述通过滑动窗口对所述异步队列中的流量数据进行分割,并从当前窗口内的流量数据中根据访问频率得到当前热点房间信息包括:
[0017]在所述异步队列中每隔预设时间段进行一次窗口滑动,得到当前窗口内的流量数据;
[0018]在窗口切换时,从所述当前窗口内的流量数据中计算出访问频率最高的N个房间,将所述N个房间的信息作为当前的热点房间信息,其中N为预设的正整数。
[0019]可选地,所述将所述热点房间信息对应的直播数据存放至本地缓存时还包括设置所述直播数据的有效期。
[0020]可选地,所述根据访问房间标识在所述热点房间信息中进行匹配还包括:
[0021]当所述访问房间标识命中所述热点房间信息时,判断所述本地缓存中所述访问房间标识对应的直播数据是否在有效期内;
[0022]若所述直播数据未过期则直接从所述本地缓存中返回所述直播数据;
[0023]若所述直播数据已过期则访问内存数据库得到所述访问房间标识对应的直播数据。
[0024]此外,为实现上述目的,本申请实施例还提供一种热点流量处理系统,所述系统包括:
[0025]采集模块,用于实时采集各个直播间的流量数据,并写入异步队列;
[0026]分割模块,用于通过滑动窗口对所述异步队列中的流量数据进行分割,并从当前窗口内的流量数据中根据访问频率得到当前热点房间信息;
[0027]缓存模块,用于将所述热点房间信息对应的直播数据存放至本地缓存;
[0028]匹配模块,用于当接收到外部访问请求时,根据访问房间标识在所述热点房间信息中进行匹配,在匹配成功时,直接从所述本地缓存中返回对应的直播数据。
[0029]为实现上述目的,本申请实施例还提供一种电子装置,所述电子装置包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的热点流量处理程序,所述热点流量处理程序被所述处理器执行时实现如上述的热点流量处理方法。
[0030]为实现上述目的,本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有热点流量处理程序,所述热点流量处理程序被处理器执行时实现如上述的热点流量处理方法。
[0031]本申请实施例提出的热点流量处理方法、系统、电子装置及计算机可读存储介质,能够通过自动探测热点,将热点数据缓存于本地内存中,避免热点流量访问内存数据库,达到削峰的效果,保证在流量洪峰下也能稳定持续的提供服务。
附图说明
[0032]图1为实现本申请各个实施例的一种应用环境架构图;
[0033]图2为本申请第一实施例提出的一种热点流量处理方法的流程图;
[0034]图3为图2中步骤S202的细化流程示意图;
[0035]图4为图2中步骤S206的细化流程示意图;
[0036]图5为本申请第二实施例提出的一种热点流量处理方法的流程图;
[0037]图6为所述第二实施例另一种形式的流程示意图;
[0038]图7为本申请第三实施例提出的一种电子装置的硬件架构示意图;
[0039]图8为本申请第四实施例提出的一种热点流量处理系统的模块示意图;
[0040]图9为本申请第五实施例提出的一种热点流量处理系统的模块示意图。
具体实施方式
[0041]为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对
本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0042]需要说明的是,在本申请实施例中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本申请要求的保护范围之内。
[0043]请参阅图1,图1为实现本申请各个实施例的一种应用环境架构图。本申请可应用于包括,但不仅限于CDN(Content Delivery Network,内容分发网络)2、客户端4、服务端6、内存数据库8的应用环境中。
[0044]其中,所述CDN 2为构建在现有网络基础之上的智能虚拟网络,依靠部署在各地的边缘服务节点,通过负载均衡、内容分发、调度等使客户端4就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率。例如,所述CDN 2可以为客户端4进行直播音视频数据的传输。
[0045]所述客户端4用于向用户显示当前应用的界面并接收用户的操作,例如接收并转发用户对某个直播间的访问请求并向用户播本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种热点流量处理方法,其特征在于,所述方法包括:实时采集各个直播间的流量数据,并写入异步队列;通过滑动窗口对所述异步队列中的流量数据进行分割,并从当前窗口内的流量数据中根据访问频率得到当前热点房间信息;将所述热点房间信息对应的直播数据存放至本地缓存;及当接收到外部访问请求时,根据访问房间标识在所述热点房间信息中进行匹配,在匹配成功时,直接从所述本地缓存中返回对应的直播数据。2.根据权利要求1所述的热点流量处理方法,其特征在于,所述方法还包括:当匹配失败时,访问内存数据库得到所述访问房间标识对应的直播数据并返回。3.根据权利要求2所述的热点流量处理方法,其特征在于,所述方法还包括:定时或根据数据变更消息访问所述内存数据库,以更新所述本地缓存中的所述直播数据。4.根据权利要求1至3任一项所述的热点流量处理方法,其特征在于,所述实时采集各个直播间的流量数据包括:通过接口埋点实时采集接口流量数据,得到各个直播间的流量数据。5.根据权利要求1至4任一项所述的热点流量处理方法,其特征在于,所述通过滑动窗口对所述异步队列中的流量数据进行分割,并从当前窗口内的流量数据中根据访问频率得到当前热点房间信息包括:在所述异步队列中每隔预设时间段进行一次窗口滑动,得到当前窗口内的流量数据;在窗口切换时,从所述当前窗口内的流量数据中计算出访问频率最高的N个房间,将所述N个房间的信息作为当前的热点房间信息,其中N为预设的正整数。6.根据权利要求1至5任一项所述的热点流量处理方法,其特征在于...

【专利技术属性】
技术研发人员:赵伟
申请(专利权)人:上海哔哩哔哩科技有限公司
类型:发明
国别省市:

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

1