CN114666625B - 一种热门主播列表的生成方法、直播系统及计算设备 - Google Patents
一种热门主播列表的生成方法、直播系统及计算设备 Download PDFInfo
- Publication number
- CN114666625B CN114666625B CN202210369349.7A CN202210369349A CN114666625B CN 114666625 B CN114666625 B CN 114666625B CN 202210369349 A CN202210369349 A CN 202210369349A CN 114666625 B CN114666625 B CN 114666625B
- Authority
- CN
- China
- Prior art keywords
- behavior
- live broadcast
- live
- anchor
- server
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 82
- 230000008569 process Effects 0.000 claims abstract description 20
- 230000006399 behavior Effects 0.000 claims description 176
- 238000004891 communication Methods 0.000 claims description 23
- 238000003860 storage Methods 0.000 claims description 20
- 230000001965 increasing effect Effects 0.000 claims description 7
- 235000019633 pungent taste Nutrition 0.000 description 8
- 238000004364 calculation method Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 230000003993 interaction Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000002708 enhancing effect Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000007723 transport mechanism Effects 0.000 description 2
- 238000010521 absorption reaction Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/251—Learning process for intelligent management, e.g. learning user preferences for recommending movies
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/21—Server components or server architectures
- H04N21/218—Source of audio or video content, e.g. local disk arrays
- H04N21/2187—Live feed
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/231—Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/258—Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
- H04N21/25866—Management of end-user data
- H04N21/25883—Management of end-user data being end-user demographical data, e.g. age, family status or address
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Graphics (AREA)
- Computing Systems (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种热门主播列表的生成方法、直播系统及计算设备,方法包括步骤:接收一个或多个客户端在观看一个或多个主播端的直播数据时生成的用户行为数据;基于用户行为数据生成行为消息体并发送至行为消息队列,以便经由行为消息队列将所述行为消息体存储到缓存服务器中,所述行为消息体包含所述用户行为数据对应的行为类型和直播标识;响应于主播端发送的本场直播结束命令,从缓存服务器获取所述本场直播过程中的一种或多种行为类型对应的数字值;以及根据所述一种或多种行为类型对应的数字值计算所述主播端的当前热度值,并根据所述当前热度值生成热门主播列表。根据本发明的技术方案,提升了计算热度值的效率。
Description
技术领域
本发明涉及网络直播技术领域,尤其涉及一种热门主播列表的生成方法、直播系统及计算设备。
背景技术
随着互联网和网络直播的发展,很多应用平台都设有直播频道,而主播是决定一个直播应用活跃度的重要因素之一。通过热门主播列表可以定向向用户展示平台的热门主播,有利于提高用户粘度。热门主播列表即主播综合实力榜,是主播综合实力的重要体现。基于主播的影响力、观众指数、勤奋指数、魅力指数、吸金力、成长指数等指标并利用ln函数进行科学计算,可以确定主播的综合实力,进而根据主播综合实力的高低顺序形成主播综合实力榜。由于主播综合实力榜对于提高用户粘度至关重要,因此,计算热门主播综合实力的规则显得尤为重要。
根据现有技术方案,用户在观看直播过程中,会产生观看直播、发送弹幕、充值打赏、关注主播、分享直播、点赞等用户行为数据,在根据这些用户行为数据执行对应的业务逻辑操作的同时,会将用户行为数据记录在SQL Server(关系数据库服务器)中。每场直播结束之后,需要根据SQL Server中记录的用户行为数据来计算主播的热度值,并基于热度值来生成和更新热门主播列表。这种实现方案只能应用于直播场次较少、且用户互动行为较弱的场景。而随着直播场次不断增多、用户交互越来越频繁,部分用户行为表(例如弹幕表、打赏表)的数据量会非常大,导致数据库压力过大,查询用户行为数据十分耗时。而且,随着直播场次不断增多,当瞬间结束的直播数量过多时,在计算主播热度值时需要查询数据库中的多个表,需要根据从多个表查询得到的数据进行计算,这造成整个查询和计算过程十分缓慢,影响用户体验。
为此,需要一种热门主播列表的生成方法,以解决现有技术中存在的问题。
发明内容
为此,本发明提供一种热门主播列表的生成方法、直播系统及计算设备,以解决或至少缓解上面存在的问题。
根据本发明的一个方面,提供一种热门主播列表的生成方法,在直播服务器中执行,所述直播服务器分别与一个或多个客户端、一个或多个主播端通信连接,所述方法包括步骤:接收一个或多个客户端在观看一个或多个主播端的直播数据时生成的用户行为数据;基于用户行为数据生成行为消息体并发送至行为消息队列,以便经由行为消息队列将所述行为消息体存储到缓存服务器中,所述行为消息体包含所述用户行为数据对应的行为类型和直播标识;响应于主播端发送的本场直播结束命令,从缓存服务器获取所述本场直播过程中的一种或多种行为类型对应的数字值;以及根据所述一种或多种行为类型对应的数字值计算所述主播端的当前热度值,并根据所述当前热度值生成热门主播列表。
可选地,在根据本发明的热门主播列表的生成方法中,所述缓存服务器中的每个键值关联一个数字值,将所述行为消息体存储到缓存服务器中的步骤包括:根据所述行为消息体中的行为类型和直播标识生成键值,并将缓存服务器中与所述键值相关联的数字值增加1。
可选地,在根据本发明的热门主播列表的生成方法中,从缓存服务器获取所述本场直播过程中的一种或多种行为类型对应的数字值的步骤包括:对于与本场直播相对应的每种行为类型,分别根据所述行为类型和本场直播标识生成相应的键值,并基于所述键值从所述缓存服务器获取相关联的数字值。
可选地,在根据本发明的热门主播列表的生成方法中,根据所述一种或多种行为类型对应的数字值计算所述主播端的当前热度值的步骤包括:对所述一种或多种行为类型对应的数字值进行求和,以得到所述主播端的当前热度值。
可选地,在根据本发明的热门主播列表的生成方法中,在响应于主播端发送的本场直播结束命令之前,包括步骤:接收主播端经由直播结束消息队列发送的本场直播结束消息体。
可选地,在根据本发明的热门主播列表的生成方法中,所述直播结束消息队列包括多个消息队列;所述主播端适于从本场直播结束消息体中获取规则描述信息,确定与所述规则描述信息相对应的目标消息队列,并将所述直播结束消息体发送至所述目标消息队列。
可选地,在根据本发明的热门主播列表的生成方法中,所述行为类型包括观看直播、发送弹幕、充值打赏、关注主播、直播分享、点赞中的一种或多种。
可选地,在根据本发明的热门主播列表的生成方法中,还包括步骤:经由所述行为消息队列将所述行为消息体存储到关系数据库服务器中。
可选地,在根据本发明的热门主播列表的生成方法中,还包括步骤:将所述热门主播列表发送至一个或多个客户端,以便在客户端展示所述热门主播列表。
根据本发明的一个方面,提供一种直播系统,包括:直播服务器,适于执行如上所述的热门主播列表的生成方法;一个或多个客户端,与所述直播服务器通信连接,适于在观看一个或多个主播端的直播数据时生成用户行为数据并发送至所述直播服务器;一个或多个主播端,与所述直播服务器通信连接,适于生成直播数据,并适于向所述直播服务器发送本场直播结束命令;以及缓存服务器,经由行为消息队列与所述直播服务器通信连接,适于存储每场直播过程中的一种或多种行为类型对应的数字值。
根据本发明的一个方面,提供一种计算设备,包括:至少一个处理器;存储器,存储有程序指令,其中,程序指令被配置为适于由上述至少一个处理器执行,所述程序指令包括用于执行如上所述的热门主播列表的生成方法的指令。
根据本发明的一个方面,提供一种存储有程序指令的可读存储介质,当该程序指令被计算设备读取并执行时,使得该计算设备执行如上所述的热门主播列表的生成方法。
根据本发明的技术方案,提供了一种热门主播列表的生成方法,直播服务器每当接收到在直播数据过程中的用户行为数据时,生成相应的行为消息体,并基于行为类型和直播标识生成键值以及在缓存服务器中更新与键值相对应的数字值。这样,在直播结束后,直播服务器只需要从缓存服务器获取直播数据中每个行为类型对应的数字值并根据数字值进行计算主播端的当前热度值即可,而无需关联查询关系数据库服务器中的多个行为数据表中的用户行为数据,降低了查询数据的复杂度。这样,本发明只需要从缓存获取直播数据中每个行为类型对应的数字值,根据数字值可以直接计算热度值,无需与关系数据库服务器进行数据交互,这样不仅加快了查询用户行为相关数据的效率,获取数据耗时较短,而且,使得计算规则更加简单,也提升了计算热度值的效率,从而有利于实时更新热门主播列表,提高用户使用体验感,增强用户对直播平台的粘度。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
为了实现上述以及相关目的,本文结合下面的描述和附图来描述某些说明性方面,这些方面指示了可以实践本文所公开的原理的各种方式,并且所有方面及其等效方面旨在落入所要求保护的主题的范围内。通过结合附图阅读下面的详细描述,本公开的上述以及其它目的、特征和优势将变得更加明显。遍及本公开,相同的附图标记通常指代相同的部件或元素。
图1示出了根据本发明一个实施例的直播系统100的示意图;
图2示出了根据本发明一个实施例的计算设备200的示意图;
图3示出了根据本发明一个实施例的热门主播列表的生成方法300的流程图;以及
图4示出了根据本发明一个实施例中在接收到直播结束命令后计算热度值的流程图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
图1示出了根据本发明一个实施例的直播系统100的示意图。
如图1所示,直播系统100包括直播服务器120、与直播服务器120通信相连的一个或多个主播端130、以及与直播服务器120通信相连的一个或多个客户端。一个或多个客户端110、一个或多个主播端130例如可以通过有线或无线的方式与直播服务器120网络连接。
客户端110即用户所使用的终端设备,主播端130即主播使用的终端设备。客户端110、主播端130分别可以是桌面电脑、笔记本电脑等个人计算机,也可以是手机、平板电脑、多媒体设备、智能可穿戴设备等,但不限于此。
直播服务器120可以提供直播服务。具体地,直播服务器120可以实现为桌面电脑、笔记本电脑、处理器芯片、手机、平板电脑等计算设备,但不限于此,也可以是驻留在计算设备上的应用程序。
在本发明的实施例中,每个主播端130可以创建生成直播数据并将直播数据发送至直播服务器120,以便经由直播服务器120将主播端130的直播数据提供给一个或多个客户端110。
每个客户端110的用户可以观看一个或多个主播端的直播数据。客户端用户在观看直播数据时,可以产生观看直播、发送弹幕、充值打赏、关注主播、直播分享、点赞等用户行为并生成相应的用户行为数据,并将生成的用户行为数据发送至直播服务器120。
相应地,客户端110在观看直播数据过程中提供至直播服务器120的多个用户行为数据可以对应一种或多种行为类型,具体地,行为类型可以是观看直播、发送弹幕、充值打赏、关注主播、直播分享、点赞中的一种或多种。
在一个实施例中,如图1所示,直播系统100还包括与直播服务器120通信连接的缓存服务器140、关系数据库服务器160。直播服务器120可以经由行为消息队列151与缓存服务器140、关系数据库服务器160通信连接。缓存服务器140例如可以为Redis。
在一个实施例中,直播系统100还包括消息队列服务器(图中未示出),消息队列服务器可以部署行为消息队列151,以便直播服务器120经由行为消息队列151与缓存服务器140、关系数据库服务器160进行通信。在一种实现方式中,消息队列服务器例如可以实现为RabbitMQ服务器,但本发明不限于此。
直播服务器120可以基于用户行为数据封装生成行为消息体,并将行为消息体发送至行为消息队列151,以便经由行为消息队列151将行为消息体存储到缓存服务器140中。这里,行为消息体包含用户行为数据对应的行为类型、以及直播标识(例如用户观看直播数据的房间ID)。
在一个实施例中,缓存服务器140是基于内存的高性能Key-value数据库。缓存服务器140中可以存储每场直播过程中的一种或多种行为类型对应的数字值。具体而言,缓存服务器140中存储的每个键值(Key)分别表示一场直播的一种行为类型,换言之,每个键值是基于一场直播的一种行为类型来生成。每个键值关联一个数字值,具体而言,与每个键值(Key)相关联的value值是一个数字值,该数字值即是键值对应的一场直播的一种行为类型的数字值,也即,在一场直播中产生一种行为类型对应的用户行为数据产生的数量。
基于此,对于直播服务器120发送至行为消息队列151中的每个行为消息体,在将行为消息体存储到缓存服务器140中时,可以根据行为消息体中的行为类型和直播标识来生成键值,并将缓存服务器140中存储的与该键值相关联的数字值增加1。
对于与直播服务器120相连的每个主播端130在结束直播数据时均会将本场直播结束命令发送至直播服务器120。直播服务器120响应于主播端130发送的本场直播结束命令,从缓存服务器140获取本场直播过程中的一种或多种行为类型对应的数字值。
具体地,直播服务器120在接收到主播端130发送的本场直播结束命令后,对于与本场直播相对应的每种行为类型,分别根据行为类型和本场直播标识来生成相应的键值,并基于生成的每个键值从缓存服务器140中查询获取与键值相关联的数字值。这样,便可以得到本场直播过程中的一种或多种行为类型对应的数字值。
接下来,直播服务器120可以根据从缓存服务器140获取的一种或多种行为类型对应的数字值,来计算主播端的当前热度值,并根据当前热度值生成最新的热门主播列表。进而,可以将最新的热门主播列表推送至各个客户端110,以便在客户端展示最新的热门主播列表,从而实现对热门主播列表的实时更新,向客户端110用户推荐最新的热门主播信息。
根据本发明的直播系统100,对于每个主播端130在每场直播结束之后,根据在直播数据过程中的一种或多种行为类型对应的数字值来计算主播端的当前热度值,也即是最新的热度值,这样,根据每个主播端的当前热度值的高低来对各个主播的综合实力进行排名,可以得到最新的热门主播列表,从而实现对热门主播列表的实时更新。
在根据本发明的实施例中,直播服务器120适于执行本发明的热门主播列表的生成方法300,本发明的热门主播列表的生成方法300将在下文中详述。
根据本发明的一个实施例,直播服务器120、客户端110以及主播端130分别可以实现如下所示的计算设备200。
图2示出了根据本发明一个实施例的计算设备200的示意图。
如图2所示,在基本的配置202中,计算设备200典型地包括系统存储器206和一个或者多个处理器204。存储器总线208可以用于在处理器204和系统存储器206之间的通信。
取决于期望的配置,处理器204可以是任何类型的处理,包括但不限于:微处理器(UP)、微控制器(UC)、数字信息处理器(DSP)或者它们的任何组合。处理器204可以包括诸如一级高速缓存210和二级高速缓存212之类的一个或者多个级别的高速缓存、处理器核心214和寄存器216。示例的处理器核心214可以包括运算逻辑单元(ALU)、浮点数单元(FPU)、数字信号处理核心(DSP核心)或者它们的任何组合。示例的存储器控制器218可以与处理器204一起使用,或者在一些实现中,存储器控制器218可以是处理器204的一个内部部分。
取决于期望的配置,系统存储器206可以是任意类型的存储器,包括但不限于:易失性存储器(诸如RAM)、非易失性存储器(诸如ROM、闪存等)或者它们的任何组合。系统存储器206可以包括操作系统220、一个或者多个应用222以及程序数据224。应用222实际上是多条程序指令,其用于指示处理器204执行相应的操作。在一些实施方式中,应用222可以布置为在操作系统上使得处理器204利用程序数据224进行操作。
计算设备200还包括储存设备232,储存设备232包括可移除储存器236和不可移除储存器238。
计算设备200还可以包括储存接口总线234。储存接口总线234实现了从储存设备232(例如,可移除储存器236和不可移除储存器238)经由总线/接口控制器230到基本配置202的通信。操作系统220、应用222以及数据224的至少一部分可以存储到可移除储存器236和/或不可移除储存器238上,并且在计算设备200上电或者要执行应用222时,经由储存接口总线234而加载到系统存储器206中,并由一个或者多个处理器204来执行。
计算设备200还可以包括有助于从各种接口设备(例如,输出设备242、外设接口244和通信设备246)到基本配置202经由总线/接口控制器230的通信的接口总线240。示例的输出设备242包括图像处理单元248和音频处理单元250。它们可以被配置为有助于经由一个或者多个A/V端口252与诸如显示器或者扬声器之类的各种外部设备进行通信。示例外设接口244可以包括串行接口控制器254和并行接口控制器256,它们可以被配置为有助于经由一个或者多个I/O端口258和诸如输入设备(例如,键盘、鼠标、笔、语音输入设备、触摸输入设备)或者其他外设(例如打印机、扫描仪等)之类的外部设备进行通信。示例的通信设备246可以包括网络控制器260,其可以被布置为便于经由一个或者多个通信端口264与一个或者多个其他计算设备262通过网络通信链路的通信。
网络通信链路可以是通信介质的一个示例。通信介质通常可以体现为在诸如载波或者其他传输机制之类的调制数据信号中的计算机可读指令、数据结构、程序模块,并且可以包括任何信息递送介质。“调制数据信号”可以这样的信号,它的数据集中的一个或者多个或者它的改变可以在信号中以编码信息的方式进行。作为非限制性的示例,通信介质可以包括诸如有线网络或者专线网络之类的有线介质,以及诸如声音、射频(RF)、微波、红外(IR)或者其它无线介质在内的各种无线介质。这里使用的术语计算机可读介质可以包括存储介质和通信介质二者。
在根据本发明的实施例中,计算设备200被配置为执行根据本发明的热门主播列表的生成方法300。计算设备200的应用中包含用于执行本发明的热门主播列表的生成方法300的多条程序指令,这些程序指令可以指示处理器执行根据本发明的热门主播列表的生成方法300,以便本发明的热门主播列表的生成方法300可以在计算设备200中执行。
图3示出了根据本发明一个实施例的热门主播列表的生成方法300的流程图。方法300适于在直播服务器120(例如前述计算设备200)执行。直播服务器120分别与一个或多个客户端110、一个或多个主播端130通信相连。
如图3所示,方法300适于步骤S310。
在步骤S310中,接收一个或多个客户端110在观看一个或多个主播端的直播数据时生成的用户行为数据。
这里,每个主播端130可以创建生成直播数据并将直播数据发送至直播服务器120,以便经由直播服务器120将主播端130的直播数据提供给一个或多个客户端110。每个客户端的用户可以观看一个或多个主播端的直播数据。客户端用户在观看直播数据时,可以产生观看直播、发送弹幕、充值打赏、关注主播、直播分享、点赞等用户行为并生成相应的用户行为数据,并将每次生成的用户行为数据发送至直播服务器120。
相应地,客户端110在观看直播数据过程中提供至直播服务器120的多个用户行为数据可以对应一种或多种行为类型,具体地,行为类型可以是观看直播、发送弹幕、充值打赏、关注主播、直播分享、点赞中的一种或多种。
随后,在步骤S320中,基于用户行为数据封装生成行为消息体,并将行为消息体发送至行为消息队列151,以便经由行为消息队列151将行为消息体存储到缓存服务器140中。这里,行为消息体包含用户行为数据对应的行为类型、以及直播标识(例如用户观看直播数据的房间ID)。
需要说明的是,与直播服务器120通信相连的消息队列服务器部署有行为消息队列151,以便直播服务器120通过行为消息队列151与缓存服务器140进行通信。具体地,直播服务器120可以将基于用户行为数据生成的行为消息体添加至行为消息队列151中,以便行为消息队列151的消费者从行为消息队列151中获取行为消息体,并将行为消息体存储到缓存服务器140中。
在一个实施例中,缓存服务器140是基于内存的高性能Key-value数据库。缓存服务器140中可以存储每场直播过程中的一种或多种行为类型对应的数字值。具体而言,缓存服务器140中存储的每个键值(Key)分别表示一场直播的一种行为类型,换言之,每个键值是基于一场直播的一种行为类型来生成。每个键值关联一个数字值,具体而言,与每个键值(Key)相关联的value值是一个数字值,该数字值即是键值对应的一场直播的一种行为类型的数字值,也即,在一场直播中产生一种行为类型对应的用户行为数据产生的数量。
基于此,对于直播服务器120发送至行为消息队列151中的每个行为消息体,在将行为消息体存储到缓存服务器140中时,可以根据行为消息体中的行为类型和直播标识来生成键值,并将缓存服务器140中存储的与该键值相关联的数字值增加1。在一种实现方式中,可以利用incr命令将与键值相关联的数字值增加1。
接下来,在步骤S330中,响应于主播端130发送的本场直播结束命令,从缓存服务器140获取本场直播过程中的一种或多种行为类型对应的数字值。这里,对于与直播服务器相连的每个主播端130在结束直播数据时均会将本场直播结束命令发送至直播服务器120。
在一个实施例中,在接收到主播端130发送的本场直播结束命令后,对于与本场直播相对应的每种行为类型,分别根据行为类型和本场直播标识来生成相应的键值,并基于生成的每个键值从缓存服务器140中查询获取与键值相关联的数字值。这样,便可以得到本场直播过程中的一种或多种行为类型对应的数字值。
最后,在步骤S340中,根据从缓存服务器140获取的一种或多种行为类型对应的数字值,来计算主播端的当前热度值,并根据当前热度值生成最新的热门主播列表。进而,可以将最新的热门主播列表推送至各个客户端110,以便在客户端展示最新的热门主播列表,从而实现对热门主播列表的实时更新,向客户端110用户推荐最新的热门主播信息。
这里,对于每个主播端在每场直播结束之后,根据在直播数据过程中的一种或多种行为类型对应的数字值来计算主播端的当前热度值,也即是最新的热度值,这样,根据每个主播端的当前热度值的高低来对各个主播的综合实力进行排名,可以得到最新的热门主播列表,从而实现对热门主播列表的更新。
根据本发明的技术方案,每当接收到在直播数据过程中的用户行为数据时,生成相应的行为消息体,并基于行为类型和直播标识生成键值以及在缓存服务器140中更新与键值相对应的数字值。这样,在直播结束后,直播服务器只需要从缓存服务器140获取直播数据中每个行为类型对应的数字值并根据数字值进行计算主播端的当前热度值即可,而无需关联查询关系数据库服务器160中的多个行为数据表中的用户行为数据,降低了查询数据的复杂度。
在一个实施例中,可以对一种或多种行为类型对应的数字值进行求和,以得到主播端的当前热度值。
在又一个实施例中,可以针对不同行为类型对主播热度值(综合实力)的重要程度,来为每种行为类型分配一个相应的权重值,通过将一种或多种行为类型对应的数字值基于权重值进行加权后求和,来得到主播端的当前热度值。这样,计算得到的主播端的当前热度值以及更新后的热门主播列表,充分考虑了不同行为类型对主播综合实力的重要程度。
另外,在一个实施例中,直播服务器120还与关系数据库服务器160通信连接,在基于用户行为数据生成相应的行为消息体后,还可以将行为消息体存储到关系数据库服务器160中。进一步地,直播服务器120还通过上述行为消息队列151与关系数据库服务器160通信连接,直播服务器120通过将行为消息体发送至行为消息队列151,以便经由行为消息队列151将行为消息体存储到关系数据库服务器160中。
根据本发明的一个实施例,主播端130与直播服务器120之间可以部署直播结束消息队列152,每个主播端130可以通过直播结束消息队列152与直播服务器120通信,具体地,主播端130的本场直播结束之后,可以构建本场直播结束消息体,并将本场直播结束消息体发送至直播结束消息队列152,以便经由直播结束消息队列152将直播结束消息队列152发送至直播服务器120。
相应地,直播服务器120在响应于主播端130发送的本场直播结束命令之前,接收主播端经由直播结束消息队列152发送的本场直播结束消息体。本场直播结束消息体中包含本场直播结束命令的相关数据,进而,直播服务器120响应本场直播结束命令,执行后续步骤S330和S340,以便计算主播端130的当前热度值并更新热门主播列表。
在一种实现方式中,本发明可以利用Routing key/binding key的规则来将多个主播端130生成的直播结束消息体水平分配给多个消息队列,以避免消息积压,提高处理消息的效率。
具体地,主播端130的消息生产者可以构建包括规则描述信息的直播结束消息体,以便根据规则描述信息来确定该直播结束消息体将要发送的目标消息队列。主播端130的消息分配者可以从本场直播结束消息体中获取规则描述信息,确定与规则描述信息相对应的目标消息队列,并将直播结束消息体发送至目标消息队列。
直播服务器120分别通过与每个消息队列相对应的消息消费者从各个消息队列获取本场直播结束消息体,随后,根据本场直播结束消息体从缓存服务器获取本场直播过程中的一种或多种行为类型对应的数字值。具体地,对于与本场直播相对应的每种行为类型,分别根据行为类型和本场直播标识来生成相应的键值,并基于生成的每个键值从缓存服务器中查询获取与键值相关联的数字值。进而,根据一种或多种行为类型对应的数字值来计算主播端的当前热度值,并根据当前热度值来更新热门主播列表。
图4示出了根据本发明一个实施例中在接收到直播结束命令后计算热度值的流程图。如图4所示,每个主播端结束直播后,发送直播结束命令至直播结束消息队列(MQ),也即,将包含直播结束命令的本场直播结束消息体发送至直播结束消息队列(MQ)。
主播端130与直播服务器120之间部署的直播结束消息队列可以包括多个消息队列,例如包括第一消息队列、第二消息队列,但不限于两个消息队列,相应地,直播服务器120包括与多个消息队列相对应的多个消息消费者,例如第一消费者(消费者1)、第二消费者(消费者2),第一消费者可以接收第一消息队列中的直播结束消息体,第二消费者可以接收第二消息队列中的直播结束消息体。进而,第一消费者、第二消费者根据获取到的直播结束消息体从缓存服务器Redis获取直播过程中的一种或多种行为类型对应的数字值(用户行为的相关数据),并根据一种或多种行为类型对应的数字值来计算主播端的当前热度值,并根据当前热度值来更新热门主播列表。
本发明通过设置多个直播结束消息队列以及相应的多个消息消费者,在直播数据场次较多、瞬间结束的直播数据数量较多的场景下,能够有效防止直播结束消息队列中的直播结束消息体积压过多的情况,以提高对直播结束消息体的处理效率。
根据本发明的热门主播列表的生成方法300,直播服务器每当接收到在直播数据过程中的用户行为数据时,生成相应的行为消息体,并基于行为类型和直播标识生成键值以及在缓存服务器中更新与键值相对应的数字值。这样,在直播结束后,直播服务器只需要从缓存服务器获取直播数据中每个行为类型对应的数字值并根据数字值进行计算主播端的当前热度值即可,而无需关联查询关系数据库服务器中的多个行为数据表中的用户行为数据,降低了查询数据的复杂度。这样,本发明只需要从缓存获取直播数据中每个行为类型对应的数字值,根据数字值可以直接计算热度值,无需与关系数据库服务器进行数据交互,这样不仅加快了查询数据的效率,获取数据耗时较短,而且,使得计算规则更加简单,也提升了计算热度值的效率,从而有利于实时更新热门主播列表,提高用户使用体验感,增强用户对直播平台的粘度。
A8、如A1-A7中任一项所述的方法,其中,还包括步骤:经由所述行为消息队列将所述行为消息体存储到关系数据库服务器中。
A9、如A1-A8中任一项所述的方法,其中,还包括步骤:将所述热门主播列表发送至一个或多个客户端,以便在客户端展示所述热门主播列表。
这里描述的各种技术可结合硬件或软件,或者它们的组合一起实现。从而,本发明的方法和设备,或者本发明的方法和设备的某些方面或部分可采取嵌入有形媒介,例如可移动硬盘、U盘、软盘、CD-ROM或者其它任意机器可读的存储介质中的程序代码(即指令)的形式,其中当程序被载入诸如计算机之类的机器,并被所述机器执行时,所述机器变成实践本发明的设备。
在程序代码在可编程计算机上执行的情况下,移动终端一般包括处理器、处理器可读的存储介质(包括易失性和非易失性存储器和/或存储元件),至少一个输入装置,和至少一个输出装置。其中,存储器被配置用于存储程序代码;处理器被配置用于根据该存储器中存储的所述程序代码中的指令,执行本发明的热门主播列表的生成方法。
以示例而非限制的方式,可读介质包括可读存储介质和通信介质。可读存储介质存储诸如计算机可读指令、数据结构、程序模块或其它数据等信息。通信介质一般以诸如载波或其它传输机制等已调制数据信号来体现计算机可读指令、数据结构、程序模块或其它数据,并且包括任何信息传递介质。以上的任一种的组合也包括在可读介质的范围之内。
在此处所提供的说明书中,算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与本发明的示例一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下被实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员应当理解在本文所公开的示例中的设备的模块或单元或组件可以布置在如该实施例中所描述的设备中,或者可替换地可以定位在与该示例中的设备不同的一个或多个设备中。前述示例中的模块可以组合为一个模块或者此外可以分成多个子模块。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
此外,所述实施例中的一些在此被描述成可以由计算机系统的处理器或者由执行所述功能的其它装置实施的方法或方法元素的组合。因此,具有用于实施所述方法或方法元素的必要指令的处理器形成用于实施该方法或方法元素的装置。此外,装置实施例的在此所述的元素是如下装置的例子:该装置用于实施由为了实施该发明的目的的元素所执行的功能。
如在此所使用的那样,除非另行规定,使用序数词“第一”、“第二”、“第三”等等来描述普通对象仅仅表示涉及类似对象的不同实例,并且并不意图暗示这样被描述的对象必须具有时间上、空间上、排序方面或者以任意其它方式的给定顺序。
尽管根据有限数量的实施例描述了本发明,但是受益于上面的描述,本技术领域内的技术人员明白,在由此描述的本发明的范围内,可以设想其它实施例。此外,应当注意,本说明书中使用的语言主要是为了可读性和教导的目的而选择的,而不是为了解释或者限定本发明的主题而选择的。因此,在不偏离所附权利要求书的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。对于本发明的范围,对本发明所做的公开是说明性的而非限制性的,本发明的范围由所附权利要求书限定。
Claims (8)
1.一种热门主播列表的生成方法,在直播服务器中执行,所述直播服务器分别与一个或多个客户端、一个或多个主播端通信连接,所述方法包括步骤:
接收一个或多个客户端在观看一个或多个主播端的直播数据时生成的用户行为数据;
基于用户行为数据生成行为消息体并发送至行为消息队列,以便经由行为消息队列将所述行为消息体存储到缓存服务器中,所述行为消息体包含所述用户行为数据对应的行为类型和直播标识,所述行为类型包括观看直播、发送弹幕、充值打赏、关注主播、直播分享、点赞中的一种或多种;
响应于主播端发送的本场直播结束命令,对于与本场直播相对应的每种行为类型,分别根据所述行为类型和本场直播标识生成相应的键值,并基于所述键值从所述缓存服务器获取相关联的数字值;
对所述一种或多种行为类型对应的数字值进行求和,以得到所述主播端的当前热度值,并根据所述当前热度值生成热门主播列表;
其中,所述缓存服务器中的每个键值关联一个数字值,将所述行为消息体存储到缓存服务器中包括:
根据所述行为消息体中的行为类型和直播标识生成键值,并将缓存服务器中与所述键值相关联的数字值增加1。
2.如权利要求1所述的方法,其中,在响应于主播端发送的本场直播结束命令之前,包括步骤:
接收主播端经由直播结束消息队列发送的本场直播结束消息体。
3.如权利要求2所述的方法,其中,
所述直播结束消息队列包括多个消息队列;
所述主播端适于从本场直播结束消息体中获取规则描述信息,确定与所述规则描述信息相对应的目标消息队列,并将所述直播结束消息体发送至所述目标消息队列。
4.如权利要求1-3中任一项所述的方法,其中,还包括步骤:
经由所述行为消息队列将所述行为消息体存储到关系数据库服务器中。
5.如权利要求1-3中任一项所述的方法,其中,还包括步骤:
将所述热门主播列表发送至一个或多个客户端,以便在客户端展示所述热门主播列表。
6.一种直播系统,包括:
直播服务器,适于执行如权利要求1-5中任一项所述的热门主播列表的生成方法;
一个或多个客户端,与所述直播服务器通信连接,适于在观看一个或多个主播端的直播数据时生成用户行为数据并发送至所述直播服务器;
一个或多个主播端,与所述直播服务器通信连接,适于生成直播数据,并适于向所述直播服务器发送本场直播结束命令;以及
缓存服务器,经由行为消息队列与所述直播服务器通信连接,适于存储每场直播过程中的一种或多种行为类型对应的数字值。
7.一种计算设备,包括:
至少一个处理器;以及
存储器,存储有程序指令,其中,所述程序指令被配置为适于由所述至少一个处理器执行,所述程序指令包括用于执行如权利要求1-5中任一项所述的方法的指令。
8.一种存储有程序指令的可读存储介质,当所述程序指令被计算设备读取并执行时,使得所述计算设备执行如权利要求1-5中任一项所述方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210369349.7A CN114666625B (zh) | 2022-04-08 | 2022-04-08 | 一种热门主播列表的生成方法、直播系统及计算设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210369349.7A CN114666625B (zh) | 2022-04-08 | 2022-04-08 | 一种热门主播列表的生成方法、直播系统及计算设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114666625A CN114666625A (zh) | 2022-06-24 |
CN114666625B true CN114666625B (zh) | 2023-12-01 |
Family
ID=82034863
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210369349.7A Active CN114666625B (zh) | 2022-04-08 | 2022-04-08 | 一种热门主播列表的生成方法、直播系统及计算设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114666625B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107391681A (zh) * | 2017-07-24 | 2017-11-24 | 广州市百果园信息技术有限公司 | 业务数据排行处理方法和机器可读存储介质 |
WO2018104834A1 (en) * | 2016-12-07 | 2018-06-14 | Yogesh Chunilal Rathod | Real-time, ephemeral, single mode, group & auto taking visual media, stories, auto status, following feed types, mass actions, suggested activities, ar media & platform |
CN108495195A (zh) * | 2018-03-13 | 2018-09-04 | 武汉斗鱼网络科技有限公司 | 一种网络直播排行榜生成方法、装置、设备及存储介质 |
CN112070614A (zh) * | 2020-08-13 | 2020-12-11 | 华数传媒网络有限公司 | 基于全媒体的资产价值评估模型及方法 |
CN112882847A (zh) * | 2021-02-24 | 2021-06-01 | 海南车智易通信息技术有限公司 | 一种弹幕消息处理方法、装置及系统 |
CN113254463A (zh) * | 2021-05-11 | 2021-08-13 | 苏州玩蜂软件科技有限公司 | 一种榜单更新的方法、系统及介质 |
CN113542788A (zh) * | 2021-07-16 | 2021-10-22 | 北京达佳互联信息技术有限公司 | 直播数据的处理方法、装置、电子设备及存储介质 |
CN113688321A (zh) * | 2021-08-31 | 2021-11-23 | 北京快来文化传播集团有限公司 | 直播间热度排序方法、系统、设备及存储介质 |
-
2022
- 2022-04-08 CN CN202210369349.7A patent/CN114666625B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018104834A1 (en) * | 2016-12-07 | 2018-06-14 | Yogesh Chunilal Rathod | Real-time, ephemeral, single mode, group & auto taking visual media, stories, auto status, following feed types, mass actions, suggested activities, ar media & platform |
CN107391681A (zh) * | 2017-07-24 | 2017-11-24 | 广州市百果园信息技术有限公司 | 业务数据排行处理方法和机器可读存储介质 |
CN108495195A (zh) * | 2018-03-13 | 2018-09-04 | 武汉斗鱼网络科技有限公司 | 一种网络直播排行榜生成方法、装置、设备及存储介质 |
CN112070614A (zh) * | 2020-08-13 | 2020-12-11 | 华数传媒网络有限公司 | 基于全媒体的资产价值评估模型及方法 |
CN112882847A (zh) * | 2021-02-24 | 2021-06-01 | 海南车智易通信息技术有限公司 | 一种弹幕消息处理方法、装置及系统 |
CN113254463A (zh) * | 2021-05-11 | 2021-08-13 | 苏州玩蜂软件科技有限公司 | 一种榜单更新的方法、系统及介质 |
CN113542788A (zh) * | 2021-07-16 | 2021-10-22 | 北京达佳互联信息技术有限公司 | 直播数据的处理方法、装置、电子设备及存储介质 |
CN113688321A (zh) * | 2021-08-31 | 2021-11-23 | 北京快来文化传播集团有限公司 | 直播间热度排序方法、系统、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114666625A (zh) | 2022-06-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11876856B2 (en) | Method for computational-power sharing and related device | |
CN113364853B (zh) | 一种业务服务系统、业务请求方法及网关设备 | |
CN104980809A (zh) | 一种弹幕处理方法和装置 | |
WO2020093289A1 (zh) | 资源推荐方法、装置、电子设备及存储介质 | |
US10165058B2 (en) | Dynamic local function binding apparatus and method | |
CN113329069B (zh) | 一种即时通信方法、系统及计算设备 | |
US20170277526A1 (en) | Software categorization method and electronic device | |
CN109495763A (zh) | 虚拟物品记录确定方法、装置、服务器及存储介质 | |
CN104765793A (zh) | 一种软件推荐方法及服务器 | |
CN110764688B (zh) | 对数据进行处理的方法和装置 | |
CN109725991B (zh) | 任务处理方法、装置、设备及可读存储介质 | |
EP3370166B1 (en) | Method and apparatus for model parameter fusion | |
KR101712570B1 (ko) | 컨텐츠 공유 서비스 제공 방법, 장치 및 컴퓨터 프로그램 | |
CN109753424B (zh) | Ab测试的方法和装置 | |
CN109995743A (zh) | 一种多媒体文件的处理方法和终端 | |
CN114666625B (zh) | 一种热门主播列表的生成方法、直播系统及计算设备 | |
CN111652382B (zh) | 基于区块链的数据处理方法、装置、设备及存储介质 | |
KR102602698B1 (ko) | 영상과 응원봉 제어 신호의 연동 방법 및 그 장치 | |
CN106487653B (zh) | 一种消息处理方法及服务器 | |
CN112671572A (zh) | 智能设备配网的方法、装置、存储介质及电子装置 | |
CN103516618A (zh) | 一种信息投放方法、系统及相关装置 | |
CN111104088B (zh) | 一种通过语音设备播报信息的方法及系统 | |
CN110995574B (zh) | 用户信息管理方法、获取方法和系统 | |
CN114053690A (zh) | 一种云游戏处理方法、客户端、服务器及系统 | |
CN105991400B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |