CN110996109A - 异常直播间清理方法、装置、直播服务器及存储介质 - Google Patents

异常直播间清理方法、装置、直播服务器及存储介质 Download PDF

Info

Publication number
CN110996109A
CN110996109A CN201911153637.3A CN201911153637A CN110996109A CN 110996109 A CN110996109 A CN 110996109A CN 201911153637 A CN201911153637 A CN 201911153637A CN 110996109 A CN110996109 A CN 110996109A
Authority
CN
China
Prior art keywords
live broadcast
broadcast room
room
live
abnormal
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.)
Pending
Application number
CN201911153637.3A
Other languages
English (en)
Inventor
梁栩华
王天舟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Reach Best Technology Co Ltd
Beijing Dajia Internet Information Technology Co Ltd
Original Assignee
Reach Best Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Reach Best Technology Co Ltd filed Critical Reach Best Technology Co Ltd
Priority to CN201911153637.3A priority Critical patent/CN110996109A/zh
Publication of CN110996109A publication Critical patent/CN110996109A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/2187Live feed
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management 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/258Client 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/25866Management of end-user data
    • H04N21/25891Management of end-user data being end-user preferences
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management 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/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • H04N21/26291Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists for providing content or additional data updates, e.g. updating software modules, stored at the client
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/643Communication protocols
    • H04N21/6437Real-time Transport Protocol [RTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Graphics (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本公开关于一种异常直播间清理方法、装置、直播服务器及存储介质。其中,对于处在直播状态的直播间,可通过直播间的标识信息获取对应主播客户端产生的直播运行数据,根据直播运行数据判断直播间是否为异常直播间,并对异常直播间执行直播间清理操作,从而改善观众体验,降低直播维护成本。

Description

异常直播间清理方法、装置、直播服务器及存储介质
技术领域
本公开涉及直播技术领域,尤其涉及一种异常直播间清理方法、装置、直播服务器及存储介质。
背景技术
在直播领域中,一个直播平台可能同时维护有几十万个直播间,如正常客户端开启的直播间、用于线上自动化测试的直播间或非法产业使用非法工具伪造客户端开启的直播间等。
其中,对于现有的直播间的状态切换(如开播状态和关播状态),主要依赖于主播通过主播客户端上的按钮对直播间执行关播或开播操作,一旦主播未主动对处于开播状态的直播间进行关播操作,那么,虽然用于保存和维护直播间状态数据的数据库服务器中维护的直播间的状态依然为正在直播,观众也可以正常进入该直播间,但事实上,该直播间已经处于僵尸状态等其他异常状态了,导致观众体验差,直播维护成本高。
发明内容
本公开提供一种异常直播间清理方法、装置、直播服务器及存储介质,以根据直播运行数据实现对异常直播间的清理,改善观众体验,降低直播维护成本。本公开的技术方案如下:
根据本公开实施例的第一方面,提供一种异常直播间清理方法,包括:
基于处在直播状态的直播间的标识信息,获取直播运行数据,所述直播运行数据是由与所述直播间对应的主播客户端产生;
在基于所述直播运行数据分析得到所述直播间在预设时长内未产生可供进入所述直播间的观众观看的直播内容时,判定所述直播间为异常直播间;
设置所述异常直播间的直播间状态为关播状态,实现对所述异常直播间的清理。
进一步,作为一种可能的实现方式,所述直播运行数据至少包括推流信息,所述在基于所述直播运行数据分析得到所述直播间在预设时长内未产生可供进入所述直播间的观众观看的直播内容的步骤,包括:
在基于所述推流信息分析得到所述主播客户端在距离当前时间的预设时长内未出现推流行为时,判定所述直播间在预设时长内未产生可供进入所述直播间的观众观看的直播内容,其中,所述推流信息是由所述主播客户端采集并发送给直播服务器的直播数据。
进一步,作为一种可能的实现方式,所述直播运行数据至少包括所述主播客户端的心跳时间戳,所述基于所述直播运行数据分析得到所述直播间在预设时长内未产生可供进入所述直播间的观众观看的直播内容的步骤,包括:
在所述心跳时间戳与当前时间的差值大于预设值时,判定所述直播间在预设时长内未产生可供进入所述直播间的观众观看的直播内容;其中,所述心跳时间戳是通过监听所述主播客户端每隔预设时间间隔发送的心跳消息得到的。
进一步,作为一种可能的实现方式,所述直播运行数据至少包括所述主播客户端的推流信息和心跳时间戳,所述基于所述直播运行数据分析得到所述直播间在预设时长内未产生可供进入所述直播间的观众观看的直播内容的步骤,包括:
在基于所述推流信息分析得到所述主播客户端在距离当前时间的预设时长内未出现推流行为,且所述心跳时间戳与所述当前时间的差值大于预设值时,判定所述直播间在预设时长内未产生可供进入所述直播间的观众观看的直播内容;
其中,所述推流信息是由所述主播客户端采集并发送给直播服务器的直播数据,所述心跳时间戳是通过监听所述主播客户端每隔预设时间间隔发送的心跳消息得到的。
进一步,作为一种可能的实现方式,所述心跳时间戳的获取步骤,包括:
监听与所述直播间建立长连接服务的主播客户端每隔预设时间间隔发送的心跳消息;
将监听到的所述心跳消息的时间点作为心跳时间戳,其中,所述心跳消息为距离所述当前时间最近一次时间发送的。
进一步,作为一种可能的实现方式,在执行所述基于处在直播状态的直播间的标识信息,获取直播运行数据的步骤之前,所述方法还包括:
按照预设时间间隔从预设数据库服务器中获取处于直播状态的直播间的标识信息。
根据本公开实施例的第二方面,提供一种异常直播间清理装置,包括:
信息获取模块,被配置为执行基于处在直播状态的直播间的标识信息,获取直播运行数据,所述直播运行数据是由与所述直播间对应的主播客户端产生;
异常判断模块,被配置为执行在基于所述直播运行数据分析得到所述直播间在预设时长内未产生可供进入所述直播间的观众观看的直播内容时,判定所述直播间为异常直播间;
异常清理模块,被配置为执行设置所述异常直播间的直播间状态为关播状态,实现对所述异常直播间的清理。
进一步,作为一种可能的实现方式,所述直播运行数据至少包括所述主播客户端的推流信息,所述异常判断模块包括:
第一异常判断单元,被配置为执行在基于所述推流信息分析得到所述主播客户端在距离当前时间的预设时长内未出现推流行为时,判定所述直播间在预设时长内未产生可供进入所述直播间的观众观看的直播内容,其中,所述推流信息是由所述主播客户端采集并发送给直播服务器的直播数据。
进一步,作为一种可能的实现方式,所述直播运行数据至少包括所述主播客户端的心跳时间戳,所述异常判断模块包括:
第二异常判断单元,被配置为执行在所述心跳时间戳与当前时间的差值大于预设值时,判定所述直播间在预设时长内未产生可供进入所述直播间的观众观看的直播内容;其中,所述心跳时间戳是通过监听所述主播客户端每隔预设时间间隔发送的心跳消息得到的。
进一步,作为一种可能的实现方式,所述直播运行数据至少包括所述主播客户端的推流信息和心跳时间戳,所述异常判断模块包括:
第三异常判断单元,被配置为执行在基于所述推流信息分析得到所述主播客户端在距离当前时间的预设时长内未出现推流行为,且所述心跳时间戳与所述当前时间的差值大于预设值时,判定所述直播间在预设时长内未产生可供进入所述直播间的观众观看的直播内容;
其中,所述推流信息是由所述主播客户端采集并发送给直播服务器的直播数据所述心跳时间戳是通过监听所述主播客户端每隔预设时间间隔发送的心跳消息得到的。
进一步,作为一种可能的实现方式,所述装置还包括时间戳获取模块,该时间戳获取模块包括:
消息监听单元,被配置为执行监听与所述直播间建立长连接服务的主播客户端每隔预设时间间隔发送的心跳消息;
时间戳确定单元,被配置为执行将监听到的所述心跳消息的时间点作为心跳时间戳,其中,所述心跳消息为距离所述当前时间最近一次时间发送的。
进一步,作为一种可能的实现方式,所述装置还包括:
信息获取模块,被配置为执行按照预设时间间隔从预设数据库服务器中获取处于直播状态的直播间的标识信息。
根据本公开实施例的第三方面,提供一种直播服务器,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如前述的异常直播间清理方法。
根据本公开实施例的第四方面,提供一种存储介质,当所述存储介质中的指令由直播服务器中的处理器执行时,使得直播服务器能够执行如前述的异常直播间清理方法。
根据本公开实施例的第五方面,提供一种计算机程序产品,包括至少一种非临时性的计算机可读介质,存储由至少一个处理器可翻译的指令,用于实施前述的异常直播间清理装置。
本公开实施例采用的上述至少一个技术方案能够达到以下有益效果:
对于处在直播状态的直播间,可基于对应主播客户端产生的直播运行数据,判断直播间是否为需要被清理的异常直播间,并在直播间为异常直播间时对其进行清理,能够有效改善观众体验,降低直播维护成本。
附图说明
此处所说明的附图用来提供对本公开的进一步理解,构成本公开的一部分,本公开的示意性实施例及其说明用于解释本公开,并不构成对本公开的不当限定。在附图中:
图1是根据一示例性实施例示出的一种异常直播间清理方法的应用场景示意图。
图2是根据一示例性实施例示出的一种异常直播间清理方法的流程图。
图3是根据另一示例性实施例示出的一种异常直播间清理方法的流程图。
图4是根据又一示例性实施例示出的一种异常直播间清理方法的流程图。
图5是根据又一示例性实施例示出的一种异常直播间清理方法的流程图。
图6根据一示例性实施例示出的一种异常直播间清理方法的交互流程图。
图7根据一示例性实施例示出的一种异常直播间清理装置的框图。
图8根据另一示例性实施例示出的一种异常直播间清理装置的框图。
图9是根据一示例性实施例示出的一种直播服务器的框图。
为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
具体实施方式
为使本公开的目的、技术方案和优点更加清楚,下面将结合本公开具体实施例及相应的附图对本公开技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
以下结合附图,详细说明本公开各实施例提供的技术方案。
实施例一
为了能够清楚的对本实施例中给出的异常直播间清理方法的实现过程进行介绍,如图1所示,是根据一示例性实施例示出的异常直播间清理方法的一种可能的应用场景示意图,该应用场景可以包括直播服务器、Redis服务器、数据库服务器(如MySQL数据库)、多个主播客户端和多个观众客户端,直播服务器与Redis服务器、数据库服务器、多个主播客户端以及多个观众客户端分别连接,直播服务器上可运行并维护有多个直播间,Redis服务器用于对各直播间的直播运行数据进行缓存(如推流信息、拉流信息等)、数据库服务器用于对直播间的运行状态等进行保存,如处于直播状态的直播间信息、已关闭的直播间信息等,其中,推流信息是由所述主播客户端采集并发送给直播服务器的直播数据,以为进入直播间并观看直播的观众提供直播内容。
需要理解的是,在实际应用中,上述应用场景可以包括更多或更少的设备,例如,图1中示出的Redis服务器、数据库服务器以及直播服务器上涉及的所有功能可以由一个独立的服务器实现等。
基于上述应用场景,请结合参阅图2,是根据一示例性实施例示出的一种异常直播间清理方法的流程图,该异常直播间清理方法可以,但不限于由图1中所示的直播服务器执行。参照图2,异常直播间清理方法可以包括如下所示的步骤。
S11,基于处在直播状态的直播间的标识信息,获取直播运行数据。
其中,直播间的标识信息可以是,但不限于直播间的房间号等。作为一种可能的实现方式,可按照预设时间间隔(如15分钟、30分钟等)从预设数据库(如图1中所示的数据库服务器等)中获取处在直播状态的直播间的标识信息,再根据该标识信息从如图1所示的Redis服务器中获取直播运行数据。
可选地,由于在直播过程中,直播间是否处在正常直播状态主要取决于主播客户端是否向直播间提供直播数据,如视频、音频等,因此,本实施例中,直播运行数据是由与直播间对应的主播客户端产生,可以包括主播客户端的推流信息、心跳时间戳等中的至少一种。
可以理解,在直播过程中,主播客户端与直播服务器之间可以建立有两种连接,一种是基于rtmp协议(Real Time Messaging Protocol,实时消息传输协议)或者ktp协议(Kwai Transport Protocol,快手传输协议)等建立的用于实现视频、音频等数据流的推送和拉取(推送视频流、拉取视频流,分别对应主播和观众的视频录像行为和视频播放行为)。另一种是基于TCP协议(Transmission Control Protocol,传输控制协议)等建立的长连接服务,用于实现一些自定义业务,如发送红包、发送礼物、问题竞答等业务。其中,本实施例中,相对于现有的长连接服务,增加了心跳消息维护功能,如心跳消息的转存、心跳时间戳的保存等,以用于后续的异常直播间的判定。
基于前述第一种连接,主播客户端与观众客户端可基于直播服务器进行直播音视频推流和拉流服务,其中,推送视频流和拉取视频流分别对应主播和观众的视频录像行为和视频播放行为。实际直播过程中,直播服务器可将直播间的直播状态信息(如关播状态、直播状态等)保存在数据库服务器中,以用于后续直播间状态的查询。同时,直播服务器还可将获取的每一个正在直播的直播间的推流信息保存在Redis服务器中,使得外部服务可根据直播间的标识信息(如房间号)对推流信息等进行调用。例如,本实施例中,在需要进行异常直播间清理时,可以按照预设时间间隔(如一个小时、一天等)从保存有直播间的直播状态信息的数据库服务器中拉去处在直播状态的直播间的标识信息,再根据标识信息从Redis服务器中获取对应直播间的推流信息。
作为一种可能的实现方式,在实际应用中,以快手直播平台(假设快手直播平台运行在前述的直播服务器中)为例,是由供应商提供快手直播平台的音视频推流和拉流服务,那么,对于快手直播平台上的某一个直播间,快手直播平台会根据一定的策略将其分配到某一个CDN(Content Distribution Network,内容分发网络)厂商中,分配完成后的主播的推流和观众的拉流都会跟对应的CDN厂商进行交互。所以,对于正在直播的直播间,快手直播平台无法知道直播间具体的推流情况(例如,不知道主播是否还对这个直播间有推流行为)。因此,快手直播平台所处的直播服务器可通过直播间推流状态服务(LiveStreamCdnAliveService)定时查询CDN厂商的相关接口(如HTTP形式的接口),获取每一个正在直播的直播间的推流信息。
基于前述第二种连接,主播在主播客户端开播后,主播客户端会定时(如20秒发送一次)向直播服务器发送心跳消息,直播服务器在接收到心跳消息后,可将该心跳消息保存在预设的消息队列中(如Kafka中等),并将接收到心跳消息时的时间戳保存在Redis服务器,作为心跳时间戳,使得外部服务可根据直播间的标识信息(如房间号)对心跳时间戳进行调用。例如,本实施例中,在需要进行异常直播间清理时,可以按照预设时间间隔(如一个小时、一天等)从保存有直播间的直播状态的数据库服务器中获取处在直播状态的直播间的标识信息,再根据标识信息从Redis服务器中获取对应直播间的心跳时间戳。
应注意,对于同一个直播间的心跳时间戳,Redis服务器只保存收到的最后一条心跳消息的时间戳,以降低对Redis服务器的存储资源的消耗,同时提高信息调用结果的准确性。
除此之外,作为一种可能的实现方式,除上述根据直播间的标识信息从Redis服务器中调用对应的心跳时间戳之外,直播服务器还可以对监听到的心跳消息的时间戳进行本地缓存,以提高后续信息调用时的调用效率。例如,直播服务器监听与直播间建立长连接服务的主播客户端每隔预设时间间隔发送的心跳消息,将监听到的心跳消息的时间点作为心跳时间戳并保存,在需要进行异常直播间清理时,可直接根据标识信息进行对应的心跳时间戳的调用,其中,心跳消息为距离当前时间最近一次时间发送的。
S13,基于直播运行数据分析直播间是否在预设时长内未产生可供进入所述直播间的观众观看的直播内容,若是,则判定直播间为异常直播间(如僵尸直播间),并执行S15;反之,则判定直播间不为异常直播间,继续对直播间的运行状态进行监听。
其中,预设时长可以根据需要进行设计,如30分钟、1小时等。应注意的是,预设时长可以是管理员手动设定的一个固定时间窗,例如,过去的2小时、过去的1天等,本实施例对此不做限制。
进一步,根据S11中的直播运行数据的不同,S13中判断直播间是否在预设时长内未产生直播数据的判断方式可以不同。
例如,请结合参阅图3,在直播运行数据至少包括主播客户端的推流信息时,S13的实现过程可以包括以下步骤。
S130,基于推流信息分析主播客户端在距离当前时间的预设时长内是否未出现推流行为,若是,则判定直播间在预设时长内未产生可供进入所述直播间的观众观看的直播内容,并执行S15;反之,则判定直播间处于正常的直播状态。
其中,假设根据推流信息判断在过去的1天内,主播未出现于处在直播状态的直播间中,直播间也未出现主播的视频录像数据等,那么,可以判定直播间在过去的1天内都未产生可供进入所述直播间的观众观看的直播内容,也就是说,该直播间为异常直播间。
又例如,请结合参阅图4,在直播运行数据至少包括主播客户端的心跳时间戳时,S13的实现过程可以包括以下步骤。
S131,判断心跳时间戳与当前时间的差值是否大于预设值,若是,则判定直播间在预设时长内未产生可供进入所述直播间的观众观看的直播内容,并执行S15;反之,则判定直播间处于正常的直播状态。
其中,假设心跳时间戳为2019年10月22号15时23分,当前时间为2019年10月22号15时24分,预设值为1分钟,那么,由于心跳时间戳与当前时间的差值为1分钟,大于预设值1分钟,因此,可以判定直播间在预设时长内未产生可供进入所述直播间的观众观看的直播内容,该直播间为异常直播间。
可以理解,由于引起心跳时间戳与当前时间的差值大于预设值的原因可能是主播客户端故障、主播客户端与直播服务器之间的长连接服务断开等造成的心跳消息发送失败导致的,但无论是哪一种原因,都会导致直播间异常,需要将其关闭,以避免观众进入该直播间,降低用户体验,因此,本实施例中可以将心跳时间戳作为异常直播间的判断标准。
又例如,请结合参阅图5,在直播运行数据至少包括主播客户端的推流信息和心跳时间戳时,S13的实现过程可以包括以下步骤。
S132,判断基于推流信息分析得到主播客户端在距离当前时间的预设时长内是否未出现推流行为,且心跳时间戳与当前时间的差值是否大于预设值,若主播客户端在距离当前时间的预设时长内未出现推流行为,且心跳时间戳与当前时间的差值大于预设值,则判定直播间在预设时长内未产生可供进入所述直播间的观众观看的直播内容,并执行S15;反之,则判定直播间处于正常的直播状态。
其中,对于S132中将推流信息和心跳时间戳共同作为异常直播间的判断标准,能够进一步确保判断结果的准确性。
应注意,图3、图4、图5所示的异常直播间的判定方法仅是本实施例给出的三种可能的实现方式,实际实施时,根据直播运行数据的不同,异常直播间的判断方式可以有多种,本实施例在此不再赘述。
S15,设置异常直播间的直播间状态为关播状态,实现对异常直播间的清理。
其中,在将异常直播间的直播间状态设置为关播状态的方式可以有多种,例如,在判断得到异常直播间之后通知管理员手动关闭,又例如,在判断得到异常直播间之后按照预设的关闭程序进行关闭等,本实施例对此不做限制。
另外,在相关技术中,是通过数据库服务器等对直播间的运行状态等数据进行保存,因此,为了避免由于存储资源的浪费,在通过前述S11和S13判断得到处于直播状态的直播间为异常直播间时,不仅可以如S15中将异常直播间的直播间状态设置为关播状态,还可将该异常直播间的运行数据等清除,从而既能确保用户体验,还可降低直播间维护成本。
进一步,请结合参阅图1和图6,结合一种可能的实现方式对本实施例中给出的异常直播间清理方法进行说明。其中,直播服务器可以为,但不限于CDN。
第一阶段:正常直播流程
(1)主播基于主播客户端上传直播内容,主播客户端根据直播内容向直播间进行推流,直播服务器将接收到的直播推流转发给观众客户端;
(2)直播服务器将直播间的直播状态信息保存在数据库服务器中;
(3)直播服务器将直播间的推流信息保存至Redis服务器中;
(4)主播客户端基于与直播服务器之间的长连接,向直播服务器发送心跳信息;
(5)直播服务器将接收到的心跳消息转存至预设的消息队列中,并将接收到心跳消息的时间作为心跳时间戳缓存至Redis服务器中。
(6)Redis服务器根据收到的心跳时间戳对已保存的数据进行更新,使得自身只保存有时间最新的一条心跳时间戳。
直播过程中,可重复执行前述(1)-(6)中的直播流程。
第二阶段:异常直播间清理(定时启动异常直播间清理流程)
(7)直播服务器从数据库服务器中获取处在直播状态的直播间的标识信息;
(8)直播服务器根据直播间的标识信息从Redis服务器中获取直播间的直播运行数据,如推流信息或/和心跳时间戳;
(9)基于直播运行数据(如推流信息或/和心跳时间戳)判断直播间是否为异常直播间,当存在以下三种情况中的任一种,可判定为异常直播间。
(91)基于推流信息分析得到主播客户端在距离当前时间的预设时长内未出现推流行为;
(92)心跳时间戳与当前时间的差值大于预设值;
(93)基于推流信息分析得到主播客户端在距离当前时间的预设时长内未出现推流行为,且心跳时间戳与当前时间的差值大于预设值。
需要理解,对于(91)、(92)、(93)这三种情况中所涉及的预设值的大小、预设时长的大小可根据实际需求进行设定,例如,(91)中涉及的预设时长与(93)中涉及的预设时长可以相同也可以不同;又例如,(92)中涉及的预设值与(93)中涉及的预设值可以相同也可以不同等。
(10)直播服务器设置异常直播间的直播间状态为关播状态,实现对异常直播间的清理。
应注意,上述(1)-(10)中给出的异常直播间清理过程仅是本实施例中给出的异常直播间清理方法的一种可能的实现方式,并不对实施例中给出的异常直播间清理方法的保护范围造成限制。
由实施例一给出的上述技术方案中可以得到,对于处于直播状态的直播间,基于对应主播客户端产生的直播运行数据,判断直播间是否为需要被清理的异常直播间,并在直播间为异常直播间时对其进行清理,从而减少观众进入如僵尸直播间等异常直播间的概率,有效改善观众体验。
同时,通过对异常直播间的清理,能够有效避免如僵尸直播间等异常直播间的长期累积,导致的需要同时维护的正在直播的直播间越堆越多等问题的出现,进而有效降低直播维护成本。
实施例二
图7为一示例性实施例提供的异常直播间清理装置40的框图,应用于直播服务器,该异常直播间清理装置40包括信息获取模块41、异常判断模块43和异常清理模块45。
信息获取模块41,被配置为执行基于处在直播状态的直播间的标识信息,获取直播运行数据,直播运行数据是由与直播间对应的主播客户端产生。
异常判断模块43,被配置为执行在基于所述直播运行数据分析得到所述直播间在预设时长内未产生可供进入所述直播间的观众观看的直播内容时,判定所述直播间为异常直播间。
异常清理模块45,被配置为执行设置所述异常直播间的直播间状态为关播状态,实现对所述异常直播间的清理。
作为一种可能的实现方式,如图8所示,异常判断模块43可以包括第一异常判断单元430、第二异常判断单元431和第三异常判断单元432中的至少一个。
第一异常判断单元430,被配置为执行在基于推流信息分析得到主播客户端在距离当前时间的预设时长内未出现推流行为时,判定直播间在预设时长内未产生可供进入所述直播间的观众观看的直播内容,其中,所述推流信息是由所述主播客户端采集并发送给直播服务器的直播数据。
第二异常判断单元431,被配置为执行在心跳时间戳与当前时间的差值大于预设值时,判定直播间在预设时长内未产生可供进入所述直播间的观众观看的直播内容;其中,心跳时间戳是通过监听主播客户端每隔预设时间间隔发送的心跳消息得到的。
第三异常判断单元432,被配置为执行在基于推流信息分析得到主播客户端在距离当前时间的预设时长内未出现推流行为,且心跳时间戳与当前时间的差值大于预设值时,判定直播间在预设时长内未产生可供进入所述直播间的观众观看的直播内容;其中,其中,推流信息是由主播客户端采集并发送给直播服务器的直播数据,心跳时间戳是通过监听主播客户端每隔预设时间间隔发送的心跳消息得到的。
进一步地,作为一种可能的实现方式,装置还可包括时间戳获取模块,该时间戳获取模块包括消息监听单元和时间戳确定单元。
消息监听单元,被配置为执行监听与直播间建立长连接服务的主播客户端每隔预设时间间隔发送的心跳消息;
时间戳确定单元,被配置为执行将监听到的心跳消息的时间点作为心跳时间戳,其中,心跳消息为距离当前时间最近一次时间发送的。
进一步地,作为一种可能的实现方式,异常直播间清理装置40还可包括信息获取模块,该信息获取模块被配置为执行按照预设时间间隔从预设数据库服务器中获取处于直播状态的直播间的标识信息。
由于上述异常直播间清理装置40中所涉及的模块、单元或子单元具有与前述实施例一中的异常直播间清理方法相同或相应的技术特征,因此,关于本实施例中的各模块、单元或子单元的详细描述可参照前述实施例一中对异常直播间清理方法的描述,本实施例在此不再赘述。例如,关于信息获取模块41的详细描述可参照实施例一中对S11的详细介绍、关于异常判断模块43的详细描述可参照实施例一中对S13的详细介绍、关于异常清理模块45的详细描述可参照实施例一中对S15的详细介绍等。
实施例三
图9是根据一示例性实施例示出的一种直播服务器10的框图。该直播服务器10可以执行,但不限于,本公开实施例提供的异常直播间清理方法。应注意,由于本实施例中由直播服务器10执行的异常直播间清理方法具有与前述实施例一中的异常直播间清理方法相同或相应的技术特征,因此,关于本实施例中的异常直播间清理方法的详细描述可参照前述实施例一中对异常直播间清理方法的描述,本实施例在此不再赘述。
进一步,在一种可能的实现方式中,直播服务器10可以包括,但不限于,图9所示的处理器20及存储器30。处理器20、存储器30之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。
其中,存储器30用于存储程序或者数据,如存储处理器可执行指令。该存储器30可以是,但不限于,随机存取存储器(Random Access Memory,RAM),只读存储器(Read OnlyMemory,ROM),可编程只读存储器(Programmable Read-Only Memory,PROM),可擦除只读存储器(Erasable Programmable Read-Only Memory,EPROM),电可擦除只读存储器(Electric Erasable Programmable Read-Only Memory,EEPROM)等。
处理器20用于读/写存储器中存储的数据或程序,并执行相应地功能。
作为一种可能的实现方式,直播服务器10还可以包括一个电源组件被配置为执行直播服务器10的电源管理,一个有线或无线网络接口被配置为将直播服务器10连接到网络,和一个输入输出(I/O)接口。直播服务器10可以操作基于存储在存储器的操作系统,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM或类似。
应当理解的是,图9所示的结构仅为直播服务器10的结构示意图,该直播服务器10还可包括比图9中所示更多或者更少的组件,或者具有与图9所示不同的配置。图9中所示的各组件可以采用硬件、软件或其组合实现。另外,在本公开实施例中,上述直播服务器10可以是、但不限于,计算机、手机、IPad、移动上网设备等。
实施例四
在示例性实施例中,还提供了一种存储介质,当存储介质中的指令由直播服务器10中的处理器执行时,使得直播服务器10能够执行以实现实施例一中的异常直播间清理方法。可选地,存储介质可以是非临时性存储介质,例如,非临时性存储介质可以是ROM、RAM、CD-ROM、磁带、软盘和光数据存储设备等。
应注意,由于本实施例中由直播服务器10执行的异常直播间清理方法具有与前述实施例一中的异常直播间清理方法相同或相应的技术特征,因此,关于本实施例中的异常直播间清理方法的详细描述可参照前述实施例一中对异常直播间清理方法的描述,本实施例在此不再赘述。
实施例五
在示例性实施例中,还提供了一种计算机程序产品,包括至少一种非临时性的计算机可读介质,存储由至少一个处理器可翻译的指令,用于实施前述实施例三中的异常直播间清理装置40。
应注意,由于本实施例中由直播服务器10执行的异常直播间清理方法具有与前述实施例一中的异常直播间清理方法相同或相应的技术特征,因此,关于本实施例中的异常直播间清理方法的详细描述可参照前述实施例一中对异常直播间清理方法的描述,本实施例在此不再赘述。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

Claims (10)

1.一种异常直播间清理方法,其特征在于,包括:
基于处在直播状态的直播间的标识信息,获取直播运行数据,所述直播运行数据是由与所述直播间对应的主播客户端产生;
在基于所述直播运行数据分析得到所述直播间在预设时长内未产生可供进入所述直播间的观众观看的直播内容时,判定所述直播间为异常直播间;
设置所述异常直播间的直播间状态为关播状态,实现对所述异常直播间的清理。
2.根据权利要求1所述的异常直播间清理方法,其特征在于,所述直播运行数据至少包括推流信息,所述在基于所述直播运行数据分析得到所述直播间在预设时长内未产生可供进入所述直播间的观众观看的直播内容的步骤,包括:
在基于所述推流信息分析得到所述主播客户端在距离当前时间的预设时长内未出现推流行为时,判定所述直播间在预设时长内未产生可供进入所述直播间的观众观看的直播内容,其中,所述推流信息是由所述主播客户端采集并发送给直播服务器的直播数据。
3.根据权利要求1所述的异常直播间清理方法,其特征在于,所述直播运行数据至少包括所述主播客户端的心跳时间戳,所述基于所述直播运行数据分析得到所述直播间在预设时长内未产生可供进入所述直播间的观众观看的直播内容的步骤,包括:
在所述心跳时间戳与当前时间的差值大于预设值时,判定所述直播间在预设时长内未产生可供进入所述直播间的观众观看的直播内容;其中,所述心跳时间戳是通过监听所述主播客户端每隔预设时间间隔发送的心跳消息得到的。
4.根据权利要求1所述的异常直播间清理方法,其特征在于,所述直播运行数据至少包括所述主播客户端的推流信息和心跳时间戳,所述基于所述直播运行数据分析得到所述直播间在预设时长内未产生可供进入所述直播间的观众观看的直播内容的步骤,包括:
在基于所述推流信息分析得到所述主播客户端在距离当前时间的预设时长内未出现推流行为,且所述心跳时间戳与所述当前时间的差值大于预设值时,判定所述直播间在预设时长内未产生可供进入所述直播间的观众观看的直播内容;
其中,所述推流信息是由所述主播客户端采集并发送给直播服务器的直播数据,所述心跳时间戳是通过监听所述主播客户端每隔预设时间间隔发送的心跳消息得到的。
5.根据权利要求3或4所述的异常直播间清理方法,其特征在于,所述心跳时间戳的获取步骤,包括:
监听与所述直播间建立长连接服务的主播客户端每隔预设时间间隔发送的心跳消息;
将监听到的所述心跳消息的时间点作为心跳时间戳,其中,所述心跳消息为距离所述当前时间最近一次时间发送的。
6.根据权利要求1所述的异常直播间清理方法,其特征在于,在执行所述基于处在直播状态的直播间的标识信息,获取直播运行数据的步骤之前,所述方法还包括:
按照预设时间间隔从预设数据库服务器中获取处于直播状态的直播间的标识信息。
7.一种异常直播间清理装置,其特征在于,包括:
信息获取模块,被配置为执行基于处在直播状态的直播间的标识信息,获取直播运行数据,所述直播运行数据是由与所述直播间对应的主播客户端产生;
异常判断模块,被配置为执行在基于所述直播运行数据分析得到所述直播间在预设时长内未产生可供进入所述直播间的观众观看的直播内容时,判定所述直播间为异常直播间;
异常清理模块,被配置为执行设置所述异常直播间的直播间状态为关播状态,实现对所述异常直播间的清理。
8.根据权利要求7所述的异常直播间清理装置,其特征在于,所述直播运行数据至少包括所述主播客户端的推流信息,所述异常判断模块包括:
第一异常判断单元,被配置为执行在基于所述推流信息分析得到所述主播客户端在距离当前时间的预设时长内未出现推流行为时,判定所述直播间在预设时长内未产生可供进入所述直播间的观众观看的直播内容,其中,所述推流信息是由所述主播客户端采集并发送给直播服务器的直播数据。
9.一种直播服务器,其特征在于,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如权利要求1至6中任一项所述的异常直播间清理方法。
10.一种存储介质,其特征在于,当所述存储介质中的指令由直播服务器中的处理器执行时,使得直播服务器能够执行如权利要求1至6中任一项所述的异常直播间清理方法。
CN201911153637.3A 2019-11-21 2019-11-21 异常直播间清理方法、装置、直播服务器及存储介质 Pending CN110996109A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911153637.3A CN110996109A (zh) 2019-11-21 2019-11-21 异常直播间清理方法、装置、直播服务器及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911153637.3A CN110996109A (zh) 2019-11-21 2019-11-21 异常直播间清理方法、装置、直播服务器及存储介质

Publications (1)

Publication Number Publication Date
CN110996109A true CN110996109A (zh) 2020-04-10

Family

ID=70085611

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911153637.3A Pending CN110996109A (zh) 2019-11-21 2019-11-21 异常直播间清理方法、装置、直播服务器及存储介质

Country Status (1)

Country Link
CN (1) CN110996109A (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111726644A (zh) * 2020-05-07 2020-09-29 火币(广州)区块链科技有限公司 一种多直播间浮动窗口的方法和装置
CN112738538A (zh) * 2020-12-25 2021-04-30 深圳市珍爱捷云信息技术有限公司 直播间挂机行为检测方法、装置、电子设备和计算机可读存储介质
CN113965797A (zh) * 2021-10-19 2022-01-21 上海哔哩哔哩科技有限公司 直播间切换方法和系统
CN114025184A (zh) * 2021-10-27 2022-02-08 深圳市富途网络科技有限公司 一种视频直播方法及电子设备
CN114095743A (zh) * 2021-11-12 2022-02-25 北京乐我无限科技有限责任公司 一种直播间状态的更新方法、装置、电子设备及存储介质
CN114339364A (zh) * 2021-12-21 2022-04-12 北京达佳互联信息技术有限公司 多媒体数据处理方法、装置、电子设备及存储介质
CN114630151A (zh) * 2022-03-10 2022-06-14 广州方硅信息技术有限公司 基于流鉴权的直播列表处理方法、装置、设备及存储介质
CN114679598A (zh) * 2022-03-24 2022-06-28 上海哔哩哔哩科技有限公司 直播推送方法及装置
CN114710685A (zh) * 2022-03-14 2022-07-05 秦皇岛泰和安科技有限公司 视频流的处理方法、装置、终端设备及存储介质
CN115002500A (zh) * 2022-06-15 2022-09-02 北京搜房科技发展有限公司 直播管理方法及装置、存储介质及电子设备

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101163113A (zh) * 2006-10-12 2008-04-16 阿里巴巴公司 一种即时通信的断线重连系统及方法
WO2012031254A1 (en) * 2010-09-04 2012-03-08 Cisco Technology, Inc. System and method for providing media server redundancy in a network environment
CN106331739A (zh) * 2016-09-05 2017-01-11 广州爱九游信息技术有限公司 直播方法、设备、服务器、系统以及直播状态监控方法
CN106454433A (zh) * 2016-10-20 2017-02-22 央视国际网络无锡有限公司 一种直播信号延时处理方法及装置
CN108111879A (zh) * 2017-12-12 2018-06-01 福建中金在线信息科技有限公司 一种视频直播异常处理的方法、装置及电子设备
CN108259448A (zh) * 2016-12-30 2018-07-06 广州华多网络科技有限公司 一种防止连麦时异常断线的方法及装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101163113A (zh) * 2006-10-12 2008-04-16 阿里巴巴公司 一种即时通信的断线重连系统及方法
WO2012031254A1 (en) * 2010-09-04 2012-03-08 Cisco Technology, Inc. System and method for providing media server redundancy in a network environment
CN106331739A (zh) * 2016-09-05 2017-01-11 广州爱九游信息技术有限公司 直播方法、设备、服务器、系统以及直播状态监控方法
CN106454433A (zh) * 2016-10-20 2017-02-22 央视国际网络无锡有限公司 一种直播信号延时处理方法及装置
CN108259448A (zh) * 2016-12-30 2018-07-06 广州华多网络科技有限公司 一种防止连麦时异常断线的方法及装置
CN108111879A (zh) * 2017-12-12 2018-06-01 福建中金在线信息科技有限公司 一种视频直播异常处理的方法、装置及电子设备

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111726644A (zh) * 2020-05-07 2020-09-29 火币(广州)区块链科技有限公司 一种多直播间浮动窗口的方法和装置
CN112738538B (zh) * 2020-12-25 2023-06-06 深圳市珍爱捷云信息技术有限公司 直播间挂机行为检测方法、装置、电子设备和计算机可读存储介质
CN112738538A (zh) * 2020-12-25 2021-04-30 深圳市珍爱捷云信息技术有限公司 直播间挂机行为检测方法、装置、电子设备和计算机可读存储介质
CN113965797A (zh) * 2021-10-19 2022-01-21 上海哔哩哔哩科技有限公司 直播间切换方法和系统
CN114025184A (zh) * 2021-10-27 2022-02-08 深圳市富途网络科技有限公司 一种视频直播方法及电子设备
CN114095743A (zh) * 2021-11-12 2022-02-25 北京乐我无限科技有限责任公司 一种直播间状态的更新方法、装置、电子设备及存储介质
CN114339364A (zh) * 2021-12-21 2022-04-12 北京达佳互联信息技术有限公司 多媒体数据处理方法、装置、电子设备及存储介质
CN114630151A (zh) * 2022-03-10 2022-06-14 广州方硅信息技术有限公司 基于流鉴权的直播列表处理方法、装置、设备及存储介质
CN114710685A (zh) * 2022-03-14 2022-07-05 秦皇岛泰和安科技有限公司 视频流的处理方法、装置、终端设备及存储介质
CN114710685B (zh) * 2022-03-14 2023-12-05 秦皇岛泰和安科技有限公司 视频流的处理方法、装置、终端设备及存储介质
CN114679598A (zh) * 2022-03-24 2022-06-28 上海哔哩哔哩科技有限公司 直播推送方法及装置
CN114679598B (zh) * 2022-03-24 2023-11-21 上海哔哩哔哩科技有限公司 直播推送方法及装置
CN115002500A (zh) * 2022-06-15 2022-09-02 北京搜房科技发展有限公司 直播管理方法及装置、存储介质及电子设备
CN115002500B (zh) * 2022-06-15 2024-02-13 北京搜房科技发展有限公司 直播管理方法及装置、存储介质及电子设备

Similar Documents

Publication Publication Date Title
CN110996109A (zh) 异常直播间清理方法、装置、直播服务器及存储介质
CN107690077B (zh) 监测视频直播卡顿的方法和装置
CN111010614A (zh) 一种显示直播字幕的方法、装置、服务器及介质
US8705371B2 (en) Locally diagnosing and troubleshooting service issues
CN109981628B (zh) 网络直播软件性能的监控方法及装置、电子设备
US8528031B2 (en) Distributed diagnostics for internet video link
WO2020052110A1 (zh) 业务质量监控方法、装置及系统
CN113747188B (zh) 一种视频直播质量的链路监控系统及方法
CN108391089B (zh) 多路摄像机的监控流推送方法和装置以及监控系统
US9472241B2 (en) Identifying and rerecording only the incomplete units of a program broadcast recording
WO2015154549A1 (zh) 数据的处理方法及装置
CN103974139A (zh) 一种终端网络故障检测方法、设备和系统
CN110620699B (zh) 消息到达率确定方法、装置、设备和计算机可读存储介质
EP3754998B1 (en) Streaming media quality monitoring method and system
CN110971922A (zh) 直播连麦状态监控方法、设备、存储介质及系统
CN111787345A (zh) 基于网络直播间的互动资源处理方法、装置、服务器及存储介质
US20140368665A1 (en) Iptv diagnostics system
CN110620685A (zh) 一种上报设备异常的方法及装置
CN106789209B (zh) 异常处理方法和装置
CN112565016B (zh) 异常时延的定位方法、系统、装置、电子设备及存储介质
CN111200760A (zh) 一种数据处理方法、装置及电子设备
CN112752111B (zh) 直播流处理方法及装置、计算机可读存储介质、电子设备
CN113242437A (zh) 一种rtsp协议视频无插件播放方法、系统、装置及存储介质
KR100878024B1 (ko) 시청률 관리 시스템 및 방법
CN106549794A (zh) 一种ott业务的质量监测系统、装置和方法

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20200410

RJ01 Rejection of invention patent application after publication