CN110688523A - 视频服务提供方法、装置、电子设备及存储介质 - Google Patents

视频服务提供方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN110688523A
CN110688523A CN201910934519.XA CN201910934519A CN110688523A CN 110688523 A CN110688523 A CN 110688523A CN 201910934519 A CN201910934519 A CN 201910934519A CN 110688523 A CN110688523 A CN 110688523A
Authority
CN
China
Prior art keywords
node
virtual
video
edge
edge node
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
CN201910934519.XA
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.)
Shenzhen Onething Technology Co Ltd
Original Assignee
Shenzhen Onething 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 Shenzhen Onething Technology Co Ltd filed Critical Shenzhen Onething Technology Co Ltd
Priority to CN201910934519.XA priority Critical patent/CN110688523A/zh
Publication of CN110688523A publication Critical patent/CN110688523A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/70Information retrieval; Database structures therefor; File system structures therefor of video data
    • G06F16/71Indexing; Data structures therefor; Storage structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/70Information retrieval; Database structures therefor; File system structures therefor of video data
    • G06F16/78Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/7867Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using information manually generated, e.g. tags, keywords, comments, title and artist information, manually generated time, location and usage information, user ratings
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Library & Information Science (AREA)
  • Software Systems (AREA)
  • Computer And Data Communications (AREA)

Abstract

一种视频服务提供方法,所述方法包括:接收用户发送的携带有视频标识的视频请求,所述视频请求用于请求视频服务;计算所述视频标识的第一哈希值;在预先生成的哈希环上,查找所述第一哈希值所处的位置,其中,所述哈希环由多个边缘节点的虚拟节点的第二哈希值组成;确定所述位置所属的第一虚拟节点,以及确定所述第一虚拟节点对应的第一边缘节点;使用所述第一边缘节点为所述用户提供所述视频服务。本发明还提供一种视频服务提供装置。本发明能提高视频服务的质量。

Description

视频服务提供方法、装置、电子设备及存储介质
技术领域
本发明涉及直播技术领域,尤其涉及一种视频服务提供方法、装置、电子设备及存储介质。
背景技术
目前,随着移动互联网的发展,用户对直播和点播的需求呈指数级增长,对提供服务的边缘节点分配方案提出了更加严格的要求。同时随着通信带宽资费的降低,终端设备的不断升级,用户对观看视频质量的要求也在不断提升。
现有技术主要是使用Nginx的负载均衡、DNS(Domain Name System,域名系统)的域名解析等技术给用户提供视频分发服务,然而这种方式所提供的视频服务的质量较差。
因此,如何提高视频服务的质量是一个亟待解决的技术问题。
发明内容
鉴于以上内容,有必要提供一种视频服务提供方法、装置、电子设备及存储介质,能够提高视频服务的质量。
本发明的第一方面提供一种视频服务提供方法,所述方法包括:
接收用户发送的携带有视频标识的视频请求,所述视频请求用于请求视频服务;
计算所述视频标识的第一哈希值;
在预先生成的哈希环上,查找所述第一哈希值所处的位置,其中,所述哈希环由多个边缘节点的虚拟节点的第二哈希值组成;
确定所述位置所属的第一虚拟节点,以及确定所述第一虚拟节点对应的第一边缘节点;
使用所述第一边缘节点为所述用户提供所述视频服务。
在一种可能的实现方式中,所述接收用户发送的携带有视频标识的视频请求之前,所述方法还包括:
获取预设的节点扩充系数;
针对每个所述边缘节点,根据所述节点扩充系数以及多个所述边缘节点的带宽,计算所述边缘节点需要生成的虚拟节点的数量;
根据所述数量以及所述边缘节点的节点标识,生成每个所述虚拟节点的节点标识;
计算每个所述虚拟节点的节点标识的第二哈希值;
根据多个所述第二哈希值,生成所述哈希环。
在一种可能的实现方式中,所述计算每个所述虚拟节点的节点标识的第二哈希值之后,所述方法还包括:
按照所述第二哈希值从小到大的顺序,将多个所述虚拟节点排列成圆环;
针对所述圆环上任意相邻的两个虚拟节点,判断所述两个虚拟节点是否对应同一个边缘节点;
若所述两个虚拟节点对应同一个边缘节点,删除所述两个虚拟节点中第二哈希值较小的虚拟节点;
所述根据多个所述第二哈希值,生成所述哈希环包括:
将删除虚拟节点后的圆环确定为所述哈希环。
在一种可能的实现方式中,所述确定所述位置所属的第一虚拟节点包括:
若所述位置位于两个虚拟节点之间,将所述两个虚拟节点中第二哈希值较大的虚拟节点确定为第一虚拟节点;
确定所述位置属于所述第一虚拟节点。
在一种可能的实现方式中,所述确定所述第一虚拟节点对应的第一边缘节点之后,所述方法还包括:
根据所述第一边缘节点的带宽以及负载,判断所述第一边缘节点是否具有服务能力;
若所述第一边缘节点不具有服务能力,从所述第一虚拟节点开始,按照第二哈希值从小到大的顺序,在所述哈希环上查找第二虚拟节点,其中,所述第二虚拟节点对应的第二边缘节点具有服务能力;
所述使用所述第一边缘节点为所述用户提供所述视频服务包括:
使用所述第二边缘节点为所述用户提供所述视频服务。
在一种可能的实现方式中,所述根据所述第一边缘节点的带宽以及负载,判断所述第一边缘节点是否具有服务能力包括:
判断所述第一边缘节点的带宽是否超过预设带宽阈值,以及判断所述第一边缘节点的负载是否超过预设负载阈值;
若所述第一边缘节点的带宽未超过预设带宽阈值,且所述第一边缘节点的负载未超过预设负载阈值,确定所述第一边缘节点具有服务能力。
在一种可能的实现方式中,所述接收用户发送的携带有视频标识的视频请求之后,所述方法还包括:
判断所述用户是否具有所述视频服务的访问权限;
若所述用户具有所述视频服务的访问权限,计算所述视频标识的第一哈希值。
本发明的第二方面提供一种视频服务提供装置,所述视频服务提供装置包括:
接收模块,用于接收用户发送的携带有视频标识的视频请求,所述视频请求用于请求视频服务;
计算模块,用于计算所述视频标识的第一哈希值;
查找模块,用于在预先生成的哈希环上,查找所述第一哈希值所处的位置,其中,所述哈希环由多个边缘节点的虚拟节点的第二哈希值组成;
确定模块,用于确定所述位置所属的第一虚拟节点,以及确定所述第一虚拟节点对应的第一边缘节点;
提供模块,用于使用所述第一边缘节点为所述用户提供所述视频服务。
本发明的第三方面提供一种电子设备,所述电子设备包括处理器和存储器,所述处理器用于执行所述存储器中存储的计算机程序时实现所述的视频服务提供方法。
本发明的第四方面提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现所述的视频服务提供方法。
由以上技术方案,本发明中,在接收到用户发送的携带有视频标识的视频请求时,可以计算所述视频标识的第一哈希值;进一步地,在预先生成的哈希环上,查找所述第一哈希值所处的位置,并确定所述位置所属的第一虚拟节点,以及确定所述第一虚拟节点对应的第一边缘节点;最后即可使用所述第一边缘节点为所述用户提供所述视频服务。可见,通过本发明的实施例,可以利用一致性哈希算法分配边缘节点资源,使得边缘节点可以均匀地分布,同一种视频流可以从固定的边缘节点获取,进而达到利用更少的边缘节点提供更多和更好服务能力的目的,从而可以给用户提供高效的、及时的服务质量。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1是本发明公开的一种视频服务提供方法的较佳实施例的流程图。
图2是本发明公开的一种哈希环的结构示意图。
图3是本发明公开的一种视频服务提供装置的较佳实施例的功能模块图。
图4是本发明实现视频服务提供方法的较佳实施例的电子设备的结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
需要说明的是,在本发明中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
本发明实施例的视频服务提供方法应用在电子设备中,也可以应用在电子设备和通过网络与所述电子设备进行连接的服务器所构成的硬件环境中,由服务器和电子设备共同执行。网络包括但不限于:广域网、城域网或局域网。
所述电子设备包括一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的电子设备,其硬件包括但不限于微处理器、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、数字处理器(DSP)、嵌入式设备等。所述电子设备还可包括网络设备和/或用户设备。其中,所述网络设备包括但不限于单个网络服务器、多个网络服务器组成的服务器组或基于云计算(Cloud Computing)的由大量主机或网络服务器构成的云。所述用户设备包括但不限于任何一种可与用户通过键盘、鼠标、遥控器、触摸板或声控设备等方式进行人机交互的电子产品,例如,个人计算机、平板电脑、智能手机、个人数字助理PDA等。
图1是本发明公开的一种视频服务提供方法的较佳实施例的流程图。其中,根据不同的需求,该流程图中步骤的顺序可以改变,某些步骤可以省略。
S11、电子设备接收用户发送的携带有视频标识的视频请求。
其中,所述视频请求用于请求视频服务,即请求视频流,所述视频标识用于唯一标识所述视频流的身份,比如所述视频流的名称。
作为一种可选的实施方式,步骤S11之后,所述方法还包括:
判断所述用户是否具有所述视频服务的访问权限;
若所述用户具有所述视频服务的访问权限,计算所述视频标识的第一哈希值。
在该可选的实施方式中,不同的用户在请求视频流时有不同的访问权限,比如位于黑名单中的非法用户就不具有访问权限,又比如针对一些特殊的视频流(比如刚上映的视频流),只有购买该视频流的用户或者会员用户VIP才能访问该视频流。因此,在接收到用户发送的视频请求之后,电子设备还需要先对用户进行有效性检查,具体的,先所述用户是否具有所述视频服务的访问权限,如果所述用户具有所述视频服务的访问权限,表明可以为该用户提供后续的视频服务,则可以接着执行后续的步骤。
S12、电子设备计算所述视频标识的第一哈希值。
其中,电子设备可以利用哈希算法,计算所述视频标识的第一哈希值,其中,所述第一哈希值是唯一的。
S13、电子设备在预先生成的哈希环上,查找所述第一哈希值所处的位置。
其中,所述哈希环由多个边缘节点的虚拟节点的第二哈希值组成。
其中,每个边缘节点均可以生成多个虚拟节点,每个虚拟节点的节点标识可以生成唯一的第二哈希值,多个不同虚拟节点的第二哈希值按照顺序(比如按照第二哈希值从小到大)排列起来可以生成哈希环。
其中,多个边缘节点分布于全国各地,边缘节点可以为距离用户最近,为用户提供视频服务的服务器。
作为一种可选的实施方式,在步骤S11之前,所述方法还包括:
获取预设的节点扩充系数;
针对每个所述边缘节点,根据所述节点扩充系数以及多个所述边缘节点的带宽,计算所述边缘节点需要生成的虚拟节点的数量;
根据所述数量以及所述边缘节点的节点标识,生成每个所述虚拟节点的节点标识;
计算每个所述虚拟节点的节点标识的第二哈希值;
根据多个所述第二哈希值,生成所述哈希环。
在该可选的实施方式中,可以预先根据实际情况设置节点扩充系数,比如16,其中,节点扩充系数为大于或等于1的正整数,其中,边缘节点的数量越多,可以将节点扩充系数设置得小一点,可以减少计算复杂度,边缘节点的数量越少,可以将节点扩充系数设置得大一点,可以提高分配的准确性。通常,节点扩充系数越大,生成的虚拟节点就越多,虚拟节点的分布就越均匀,分配就会越准确。
其中,每个边缘节点均会向电子设备上报资源信息,比如CPU、内存负载、上行和下行的带宽。
针对每个所述边缘节点,电子设备可以根据所述节点扩充系数以及多个所述边缘节点的带宽,计算所述边缘节点需要生成的虚拟节点的数量。举例来说,假设多个所述边缘节点的最大带宽为bmax,最小带宽为bmin,则多个所述边缘节点的带宽范围区间为[bmin,bmax],节点扩充系数为16,针对某个边缘节点,该某个边缘节点的带宽为bw,则该某个边缘节点需要生成的虚拟节点的数量num=bw/bmin*16,其中,根据这个计算公式,可以确保每个边缘节点均能生成虚拟节点,而且,边缘节点的带宽越大,通常生成的虚拟节点的数量就越多,在哈希环上命中该边缘节点的机会就越大。
进一步地,电子设备还可以根据所述数量以及所述边缘节点的节点标识,生成每个所述虚拟节点的节点标识,比如上述计算的num为16,所述边缘节点的节点标识为t-abc-1-cnd,则生成的虚拟节点的节点标识依次为t-abc-1-cnd-1、t-abc-1-cnd-2、t-abc-1-cnd-3……t-abc-1-cnd-16。之后,即可根据哈希算法,计算每个所述虚拟节点的节点标识的第二哈希值,根据多个虚拟节点的第二哈希值,将第二哈希值按照一定的顺序(从大到小,或从小到大)排列成环,即可生成所述哈希环。
作为一种可选的实施方式,所述计算每个所述虚拟节点的节点标识的第二哈希值之后,所述方法还包括:
按照所述第二哈希值从小到大的顺序,将多个所述虚拟节点排列成圆环;
针对所述圆环上任意相邻的两个虚拟节点,判断所述两个虚拟节点是否对应同一个边缘节点;
若所述两个虚拟节点对应同一个边缘节点,删除所述两个虚拟节点中第二哈希值较小的虚拟节点;
所述根据多个所述第二哈希值,生成所述哈希环包括:
将删除虚拟节点后的圆环确定为所述哈希环。
在该可选的实施方式中,在计算每个所述虚拟节点的节点标识的第二哈希值之后,可以按照所述第二哈希值从小到大的顺序,将多个所述虚拟节点排列成圆环,进一步地,由于一个边缘节点可以生成多个虚拟节点,因此,在圆环上,可能出现相邻的两个虚拟节点对应同一个边缘节点的情况,比如相邻的两个虚拟节点分别为a和b,a对应的边缘节点为A,b对应的边缘节点也为A。而在后续寻找边缘节点时,如果已经确定其中一个虚拟节点对应的边缘节点不可用,而相邻的两个虚拟节点对应同一个边缘节点,则就没必要在继续寻找与之相邻的虚拟节点对应的边缘节点了,因此,针对所述圆环上任意相邻的两个虚拟节点,需要判断所述两个虚拟节点是否对应同一个边缘节点,如果所述两个虚拟节点对应同一个边缘节点,则需要删除所述两个虚拟节点中第二哈希值较小的虚拟节点,即保留第二哈希值较大的虚拟节点,这样可以避免在寻找边缘节点时,不会因为多个连续的虚拟节点对应相同的边缘节点而导致依次找到的多个边缘节点都是同一个边缘节点,从而产生不必要的计算量的问题。也即通过上述方式,可以减少计算量。
图2是本发明公开的一种哈希环的结构示意图。如图2所示,哈希环上包括多个虚拟节点(a1、a2、b1、b2),其中,a1、a2对应的是同一个边缘节点(比如边缘节点A),b1、b2对应的是同一个边缘节点(比如边缘节点B),需要说明的是,哈希环上包括的虚拟节点的数量不限于图2所示的,还可以比图2所示的更多或更少的虚拟节点,当前,虚拟节点对应的边缘节点也可以比图2所示的更多。图2中,各个虚拟节点按照哈希值从小到大在哈希环上排列。当用户请求某个视频流时,可以根据视频流的标识计算哈希值,进而,在哈希环上找到该哈希值所在的位置。从图2中可以看出,用户请求的视频流的标识对应的哈希值的位置落在哈希环上虚拟节点a2与b1之间。
S14、电子设备确定所述位置所属的第一虚拟节点,以及确定所述第一虚拟节点对应的第一边缘节点。
其中,所述第一哈希值所处的位置主要分为两种情况,第一种是所述第一哈希值落在两个虚拟节点之间,第二种是所述第一哈希值恰好落在某个虚拟节点上。针对第一种情况,可以参考下文的处理方式,针对第二种情况,可以直接确定该某个虚拟节点即为所述位置所属的虚拟节点。
作为一种可选的实施方式,所述确定所述位置所属的第一虚拟节点包括:
若所述位置位于两个虚拟节点之间,将所述两个虚拟节点中第二哈希值较大的虚拟节点确定为第一虚拟节点;
确定所述位置属于所述第一虚拟节点。
在该可选的实施方式中,若所述位置位于两个虚拟节点之间,将所述两个虚拟节点中第二哈希值较大的虚拟节点确定为第一虚拟节点,并确定所述位置属于所述第一虚拟节点。以图2为例,用户请求的视频流的标识对应的哈希值的位置落在哈希环上虚拟节点a2与b1之间,而a2的哈希值大于b1的哈希值,因此,可以确定位置C属于虚拟节点a2。
可选的,针对所述位置位于两个虚拟节点之间的情况,也可以将所述两个虚拟节点中第二哈希值较小的虚拟节点确定为第一虚拟节点。
S15、电子设备使用所述第一边缘节点为所述用户提供所述视频服务。
本发明中,电子设备利用所述视频标识生成第一哈希值,可以保证同一个视频流总是会被分配到同一个边缘节点,从而达到了流汇聚效果,进而提高了视频流在边缘节点的命中率,减少了边缘节点的回源成本和CPU的压力负载。比如用户a在看直播1时,分配的是边缘节点bkj1,用户b也在看直播1,给用户b分配的也是边缘节点bkj1。
此外,电子设备利用哈希算法的随机性返回的边缘节点,可以保证视频流在边缘节点资源的均匀分配,比如,用户a在看直播1时,分配的是边缘节点bkj1,用户c在看直播2时,给用户c分配的是边缘节点bkj2。通常,服务的用户越多,分布越均匀,最后达到了利用更少的边缘节点提供更多和更好服务能力的目的。
作为一种可选的实施方式,步骤S14之后,所述方法还包括:
根据所述第一边缘节点的带宽以及负载,判断所述第一边缘节点是否具有服务能力;
若所述第一边缘节点不具有服务能力,从所述第一虚拟节点开始,按照第二哈希值从小到大的顺序,在所述哈希环上查找第二虚拟节点,其中,所述第二虚拟节点对应的第二边缘节点具有服务能力;
所述使用所述第一边缘节点为所述用户提供所述视频服务包括:
使用所述第二边缘节点为所述用户提供所述视频服务。
具体的,所述根据所述第一边缘节点的带宽以及负载,判断所述第一边缘节点是否具有服务能力包括:
判断所述第一边缘节点的带宽是否超过预设带宽阈值,以及判断所述第一边缘节点的负载是否超过预设负载阈值;
若所述第一边缘节点的带宽未超过预设带宽阈值,且所述第一边缘节点的负载未超过预设负载阈值,确定所述第一边缘节点具有服务能力。
在该可选的实施方式中,由于不同的边缘节点的带宽、负载不同,有的边缘节点针对当前用户的视频请求具有服务能力,而有的边缘节点针对当前用户的视频请求不具有服务能力,因此,在确定所述第一虚拟节点对应的第一边缘节点之后,还需要根据第一边缘节点的服务能力来决定是否分配该第一边缘节点。其中,第一边缘节点的服务能力通常由第一边缘节点的带宽以及负载决定,如果第一边缘节点的带宽未超过预设带宽阈值,且第一边缘节点的负载未超过预设负载阈值,则可以确定该第一边缘节点具有服务能力,即可使用所述第一边缘节点为所述用户提供所述视频服务。
反之,如果所述第一边缘节点不具有服务能力,则需要从所述第一虚拟节点开始,按照第二哈希值从小到大的顺序,在所述哈希环上依次查找虚拟节点,直到找到所述第二虚拟节点对应的第二边缘节点具有服务能力为止,此时,就不能为用户分配第一边缘节点了,需要为用户分配第二边缘节点,使用所述第二边缘节点为所述用户提供所述视频服务。可选的,也可以按照第二哈希值从大到小的顺序,在所述哈希环上依次查找虚拟节点,直到找到所述第二虚拟节点对应的第二边缘节点具有服务能力为止。
可选的,如果在哈希环上循环一遍,均未找到某个虚拟节点对应的边缘节点具有服务能力,则需要向用户返回提示信息,所述提示信息用于提示无可用的边缘节点提供视频服务。
需要说明的是,上述在查找确定虚拟节点时需要保持大小顺序的一致性,比如,如果所述位置位于两个虚拟节点之间,将所述两个虚拟节点中第二哈希值较大的虚拟节点确定为第一虚拟节点,则后续在判断出所述第一边缘节点不具有服务能力时,就需要按照第二哈希值从小到大的顺序,在所述哈希环上查找第二虚拟节点,反之,如果所述位置位于两个虚拟节点之间,将所述两个虚拟节点中第二哈希值较小的虚拟节点确定为第一虚拟节点,则后续在判断出所述第一边缘节点不具有服务能力时,就需要按照第二哈希值从大到小的顺序,在所述哈希环上查找第二虚拟节点。这样才能够充分发挥哈希环一致性的作用,保证相同视频流分配边缘节点的一致性,提高视频流在边缘节点的命中率,减少边缘节点的缓存和CPU压力。
在图1所描述的方法流程中,在接收到用户发送的携带有视频标识的视频请求时,可以计算所述视频标识的第一哈希值;进一步地,在预先生成的哈希环上,查找所述第一哈希值所处的位置,并确定所述位置所属的第一虚拟节点,以及确定所述第一虚拟节点对应的第一边缘节点;最后即可使用所述第一边缘节点为所述用户提供所述视频服务。可见,通过本发明的实施例,可以利用一致性哈希算法分配边缘节点资源,使得边缘节点可以均匀地分布,同一种视频流可以从固定的边缘节点获取,进而达到利用更少的边缘节点提供更多和更好服务能力的目的,从而可以给用户提供高效的、及时的服务质量。
以上所述,仅是本发明的具体实施方式,但本发明的保护范围并不局限于此,对于本领域的普通技术人员来说,在不脱离本发明创造构思的前提下,还可以做出改进,但这些均属于本发明的保护范围。
图3是本发明公开的一种视频服务提供装置的较佳实施例的功能模块图。
在一些实施例中,所述视频服务提供装置运行于电子设备中。所述视频服务提供装置可以包括多个由程序代码段所组成的功能模块。所述视频服务提供装置中的各个程序段的程序代码可以存储于存储器中,并由至少一个处理器所执行,以执行图1所描述的视频服务提供方法中的部分或全部步骤。
本实施例中,所述视频服务提供装置根据其所执行的功能,可以被划分为多个功能模块。所述功能模块可以包括:接收模块201、计算模块202、查找模块203、确定模块204及提供模块205。本发明所称的模块是指一种能够被至少一个处理器所执行并且能够完成固定功能的一系列计算机程序段,其存储在存储器中。在一些实施例中,关于各模块的功能将在后续的实施例中详述。
接收模块201,用于接收用户发送的携带有视频标识的视频请求,所述视频请求用于请求视频服务。
其中,所述视频请求用于请求视频服务,即请求视频流,所述视频标识用于唯一标识所述视频流的身份,比如所述视频流的名称。
可选的,所述视频服务提供装置还可以包括:
判断模块,用于在所述接收模块接收用户发送的携带有视频标识的视频请求之后,判断所述用户是否具有所述视频服务的访问权限;
若所述用户具有所述视频服务的访问权限,计算所述视频标识的第一哈希值。
在该可选的实施方式中,不同的用户在请求视频流时有不同的访问权限,比如位于黑名单中的非法用户就不具有访问权限,又比如针对一些特殊的视频流(比如刚上映的视频流),只有购买该视频流的用户或者会员用户VIP才能访问该视频流。因此,在接收到用户发送的视频请求之后,电子设备还需要先对用户进行有效性检查,具体的,先所述用户是否具有所述视频服务的访问权限,如果所述用户具有所述视频服务的访问权限,表明可以为该用户提供后续的视频服务,则可以接着执行后续的步骤。
计算模块202,用于计算所述视频标识的第一哈希值。
其中,电子设备可以利用哈希算法,计算所述视频标识的第一哈希值,其中,所述第一哈希值是唯一的。
查找模块203,用于在预先生成的哈希环上,查找所述第一哈希值所处的位置,其中,所述哈希环由多个边缘节点的虚拟节点的第二哈希值组成。
其中,所述哈希环由多个边缘节点的虚拟节点的第二哈希值组成。
其中,每个边缘节点均可以生成多个虚拟节点,每个虚拟节点的节点标识可以生成唯一的第二哈希值,多个不同虚拟节点的第二哈希值按照顺序(比如按照第二哈希值从小到大)排列起来可以生成哈希环。
其中,多个边缘节点分布于全国各地,边缘节点可以为距离用户最近,为用户提供视频服务的服务器。
可选的,所述视频服务提供装置还可以包括:
获取模块,用于获取预设的节点扩充系数;
所述计算模块202,还用于针对每个所述边缘节点,根据所述节点扩充系数以及多个所述边缘节点的带宽,计算所述边缘节点需要生成的虚拟节点的数量;
生成模块,用于根据所述数量以及所述边缘节点的节点标识,生成每个所述虚拟节点的节点标识;
所述计算模块202,还用于计算每个所述虚拟节点的节点标识的第二哈希值;
所述生成模块,还用于根据多个所述第二哈希值,生成所述哈希环。
在该可选的实施方式中,可以预先根据实际情况设置节点扩充系数,比如16,其中,节点扩充系数为大于或等于1的正整数,其中,边缘节点的数量越多,可以将节点扩充系数设置得小一点,可以减少计算复杂度,边缘节点的数量越少,可以将节点扩充系数设置得大一点,可以提高分配的准确性。通常,节点扩充系数越大,生成的虚拟节点就越多,虚拟节点的分布就越均匀,分配就会越准确。
其中,每个边缘节点均会向电子设备上报资源信息,比如CPU、内存负载、上行和下行的带宽。
针对每个所述边缘节点,电子设备可以根据所述节点扩充系数以及多个所述边缘节点的带宽,计算所述边缘节点需要生成的虚拟节点的数量。举例来说,假设多个所述边缘节点的最大带宽为bmax,最小带宽为bmin,则多个所述边缘节点的带宽范围区间为[bmin,bmax],节点扩充系数为16,针对某个边缘节点,该某个边缘节点的带宽为bw,则该某个边缘节点需要生成的虚拟节点的数量num=bw/bmin*16,其中,根据这个计算公式,可以确保每个边缘节点均能生成虚拟节点,而且,边缘节点的带宽越大,通常生成的虚拟节点的数量就越多,在哈希环上命中该边缘节点的机会就越大。
进一步地,电子设备还可以根据所述数量以及所述边缘节点的节点标识,生成每个所述虚拟节点的节点标识,比如上述计算的num为16,所述边缘节点的节点标识为t-abc-1-cnd,则生成的虚拟节点的节点标识依次为t-abc-1-cnd-1、t-abc-1-cnd-2、t-abc-1-cnd-3……t-abc-1-cnd-16。之后,即可根据哈希算法,计算每个所述虚拟节点的节点标识的第二哈希值,根据多个虚拟节点的第二哈希值,将第二哈希值按照一定的顺序(从大到小,或从小到大)排列成环,即可生成所述哈希环。
可选的,所述视频服务提供装置还可以包括:
排列模块,用于在所述计算模块202计算每个所述虚拟节点的节点标识的第二哈希值之后,按照所述第二哈希值从小到大的顺序,将多个所述虚拟节点排列成圆环;
所述判断模块,还用于针对所述圆环上任意相邻的两个虚拟节点,判断所述两个虚拟节点是否对应同一个边缘节点;
删除模块,用于若所述两个虚拟节点对应同一个边缘节点,删除所述两个虚拟节点中第二哈希值较小的虚拟节点;
所述生成模块根据多个所述第二哈希值,生成所述哈希环的方式具体为:
将删除虚拟节点后的圆环确定为所述哈希环。
在该可选的实施方式中,在计算每个所述虚拟节点的节点标识的第二哈希值之后,可以按照所述第二哈希值从小到大的顺序,将多个所述虚拟节点排列成圆环,进一步地,由于一个边缘节点可以生成多个虚拟节点,因此,在圆环上,可能出现相邻的两个虚拟节点对应同一个边缘节点的情况,比如相邻的两个虚拟节点分别为a和b,a对应的边缘节点为A,b对应的边缘节点也为A。而在后续寻找边缘节点时,如果已经确定其中一个虚拟节点对应的边缘节点不可用,而相邻的两个虚拟节点对应同一个边缘节点,则就没必要在继续寻找与之相邻的虚拟节点对应的边缘节点了,因此,针对所述圆环上任意相邻的两个虚拟节点,需要判断所述两个虚拟节点是否对应同一个边缘节点,如果所述两个虚拟节点对应同一个边缘节点,则需要删除所述两个虚拟节点中第二哈希值较小的虚拟节点,即保留第二哈希值较大的虚拟节点,这样可以避免在寻找边缘节点时,不会因为多个连续的虚拟节点对应相同的边缘节点而导致依次找到的多个边缘节点都是同一个边缘节点,从而产生不必要的计算量的问题。也即通过上述方式,可以减少计算量。
图2是本发明公开的一种哈希环的结构示意图。如图2所示,哈希环上包括多个虚拟节点(a1、a2、b1、b2),其中,a1、a2对应的是同一个边缘节点(比如边缘节点A),b1、b2对应的是同一个边缘节点(比如边缘节点B),需要说明的是,哈希环上包括的虚拟节点的数量不限于图2所示的,还可以比图2所示的更多或更少的虚拟节点,当前,虚拟节点对应的边缘节点也可以比图2所示的更多。图2中,各个虚拟节点按照哈希值从小到大在哈希环上排列。当用户请求某个视频流时,可以根据视频流的标识计算哈希值,进而,在哈希环上找到该哈希值所在的位置。从图2中可以看出,用户请求的视频流的标识对应的哈希值的位置落在哈希环上虚拟节点a2与b1之间。
确定模块204,用于确定所述位置所属的第一虚拟节点,以及确定所述第一虚拟节点对应的第一边缘节点。
其中,所述第一哈希值所处的位置主要分为两种情况,第一种是所述第一哈希值落在两个虚拟节点之间,第二种是所述第一哈希值恰好落在某个虚拟节点上。针对第一种情况,可以参考下文的处理方式,针对第二种情况,可以直接确定该某个虚拟节点即为所述位置所属的虚拟节点。
可选的,所述确定模块204确定所述位置所属的第一虚拟节点的方式具体为:
若所述位置位于两个虚拟节点之间,将所述两个虚拟节点中第二哈希值较大的虚拟节点确定为第一虚拟节点;
确定所述位置属于所述第一虚拟节点。
在该可选的实施方式中,若所述位置位于两个虚拟节点之间,将所述两个虚拟节点中第二哈希值较大的虚拟节点确定为第一虚拟节点,并确定所述位置属于所述第一虚拟节点。以图2为例,用户请求的视频流的标识对应的哈希值的位置落在哈希环上虚拟节点a2与b1之间,而a2的哈希值大于b1的哈希值,因此,可以确定位置C属于虚拟节点a2。
可选的,针对所述位置位于两个虚拟节点之间的情况,也可以将所述两个虚拟节点中第二哈希值较小的虚拟节点确定为第一虚拟节点。还用于
提供模块205,用于使用所述第一边缘节点为所述用户提供所述视频服务。
本发明中,电子设备利用所述视频标识生成第一哈希值,可以保证同一个视频流总是会被分配到同一个边缘节点,从而达到了流汇聚效果,进而提高了视频流在边缘节点的命中率,减少了边缘节点的回源成本和CPU的压力负载。比如用户a在看直播1时,分配的是边缘节点bkj1,用户b也在看直播1,给用户b分配的也是边缘节点bkj1。
此外,电子设备利用哈希算法的随机性返回的边缘节点,可以保证视频流在边缘节点资源的均匀分配,比如,用户a在看直播1时,分配的是边缘节点bkj1,用户c在看直播2时,给用户c分配的是边缘节点bkj2。通常,服务的用户越多,分布越均匀,最后达到了利用更少的边缘节点提供更多和更好服务能力的目的。
可选的,所述判断模块,还用于在所述确定模块204确定所述第一虚拟节点对应的第一边缘节点之后,根据所述第一边缘节点的带宽以及负载,判断所述第一边缘节点是否具有服务能力;
所述查找模块203,还用于若所述第一边缘节点不具有服务能力,从所述第一虚拟节点开始,按照第二哈希值从小到大的顺序,在所述哈希环上查找第二虚拟节点,其中,所述第二虚拟节点对应的第二边缘节点具有服务能力;
所述提供模块205使用所述第一边缘节点为所述用户提供所述视频服务包括:
使用所述第二边缘节点为所述用户提供所述视频服务。
具体的,所述判断模块根据所述第一边缘节点的带宽以及负载,判断所述第一边缘节点是否具有服务能力包括:
判断所述第一边缘节点的带宽是否超过预设带宽阈值,以及判断所述第一边缘节点的负载是否超过预设负载阈值;
若所述第一边缘节点的带宽未超过预设带宽阈值,且所述第一边缘节点的负载未超过预设负载阈值,确定所述第一边缘节点具有服务能力。
在该可选的实施方式中,由于不同的边缘节点的带宽、负载不同,有的边缘节点针对当前用户的视频请求具有服务能力,而有的边缘节点针对当前用户的视频请求不具有服务能力,因此,在确定所述第一虚拟节点对应的第一边缘节点之后,还需要根据第一边缘节点的服务能力来决定是否分配该第一边缘节点。其中,第一边缘节点的服务能力通常由第一边缘节点的带宽以及负载决定,如果第一边缘节点的带宽未超过预设带宽阈值,且第一边缘节点的负载未超过预设负载阈值,则可以确定该第一边缘节点具有服务能力,即可使用所述第一边缘节点为所述用户提供所述视频服务。
反之,如果所述第一边缘节点不具有服务能力,则需要从所述第一虚拟节点开始,按照第二哈希值从小到大的顺序,在所述哈希环上依次查找虚拟节点,直到找到所述第二虚拟节点对应的第二边缘节点具有服务能力为止,此时,就不能为用户分配第一边缘节点了,需要为用户分配第二边缘节点,使用所述第二边缘节点为所述用户提供所述视频服务。可选的,也可以按照第二哈希值从大到小的顺序,在所述哈希环上依次查找虚拟节点,直到找到所述第二虚拟节点对应的第二边缘节点具有服务能力为止。
可选的,如果在哈希环上循环一遍,均未找到某个虚拟节点对应的边缘节点具有服务能力,则需要向用户返回提示信息,所述提示信息用于提示无可用的边缘节点提供视频服务。
需要说明的是,上述在查找确定虚拟节点时需要保持大小顺序的一致性,比如,如果所述位置位于两个虚拟节点之间,将所述两个虚拟节点中第二哈希值较大的虚拟节点确定为第一虚拟节点,则后续在判断出所述第一边缘节点不具有服务能力时,就需要按照第二哈希值从小到大的顺序,在所述哈希环上查找第二虚拟节点,反之,如果所述位置位于两个虚拟节点之间,将所述两个虚拟节点中第二哈希值较小的虚拟节点确定为第一虚拟节点,则后续在判断出所述第一边缘节点不具有服务能力时,就需要按照第二哈希值从大到小的顺序,在所述哈希环上查找第二虚拟节点。这样才能够充分发挥哈希环一致性的作用,保证相同视频流分配边缘节点的一致性,提高视频流在边缘节点的命中率,减少边缘节点的缓存和CPU压力。
在图3所描述的视频服务提供装置中,在接收到用户发送的携带有视频标识的视频请求时,可以计算所述视频标识的第一哈希值;进一步地,在预先生成的哈希环上,查找所述第一哈希值所处的位置,并确定所述位置所属的第一虚拟节点,以及确定所述第一虚拟节点对应的第一边缘节点;最后即可使用所述第一边缘节点为所述用户提供所述视频服务。可见,通过本发明的实施例,可以利用一致性哈希算法分配边缘节点资源,使得边缘节点可以均匀地分布,同一种视频流可以从固定的边缘节点获取,进而达到利用更少的边缘节点提供更多和更好服务能力的目的,从而可以给用户提供高效的、及时的服务质量。
如图4所示,图4是本发明实现视频服务提供方法的较佳实施例的电子设备的结构示意图。所述电子设备3包括存储器31、至少一个处理器32、存储在所述存储器31中并可在所述至少一个处理器32上运行的计算机程序33及至少一条通讯总线34。
本领域技术人员可以理解,图3所示的示意图仅仅是所述电子设备3的示例,并不构成对所述电子设备3的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述电子设备3还可以包括输入输出设备、网络接入设备等。
所述电子设备3还包括但不限于任何一种可与用户通过键盘、鼠标、遥控器、触摸板或声控设备等方式进行人机交互的电子产品,例如,个人计算机、平板电脑、智能手机、个人数字助理(Personal Digital Assistant,PDA)、游戏机、交互式网络电视(InternetProtocol Television,IPTV)、智能式穿戴式设备等。所述电子设备3所处的网络包括但不限于互联网、广域网、城域网、局域网、虚拟专用网络(Virtual Private Network,VPN)等。
所述至少一个处理器32可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。该处理器32可以是微处理器或者该处理器32也可以是任何常规的处理器等,所述处理器32是所述电子设备3的控制中心,利用各种接口和线路连接整个电子设备3的各个部分。
所述存储器31可用于存储所述计算机程序33和/或模块/单元,所述处理器32通过运行或执行存储在所述存储器31内的计算机程序和/或模块/单元,以及调用存储在存储器31内的数据,实现所述电子设备3的各种功能。所述存储器31可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据电子设备3的使用所创建的数据(比如音频数据)等。此外,存储器31可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。
结合图1,所述电子设备3中的所述存储器31存储多个指令以实现一种视频服务提供方法,所述处理器32可执行所述多个指令从而实现:
接收用户发送的携带有视频标识的视频请求,所述视频请求用于请求视频服务;
计算所述视频标识的第一哈希值;
在预先生成的哈希环上,查找所述第一哈希值所处的位置,其中,所述哈希环由多个边缘节点的虚拟节点的第二哈希值组成;
确定所述位置所属的第一虚拟节点,以及确定所述第一虚拟节点对应的第一边缘节点;
使用所述第一边缘节点为所述用户提供所述视频服务。
具体地,所述处理器32对上述指令的具体实现方法可参考图1对应实施例中相关步骤的描述,在此不赘述。
在图3所描述的电子设备3中,在接收到用户发送的携带有视频标识的视频请求时,可以计算所述视频标识的第一哈希值;进一步地,在预先生成的哈希环上,查找所述第一哈希值所处的位置,并确定所述位置所属的第一虚拟节点,以及确定所述第一虚拟节点对应的第一边缘节点;最后即可使用所述第一边缘节点为所述用户提供所述视频服务。可见,通过本发明的实施例,可以利用一致性哈希算法分配边缘节点资源,使得边缘节点可以均匀地分布,同一种视频流可以从固定的边缘节点获取,进而达到利用更少的边缘节点提供更多和更好服务能力的目的,从而可以给用户提供高效的、及时的服务质量。
所述电子设备3集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器以及只读存储器(ROM,Read-Only Memory)。
在本发明所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附关联图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。系统权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第二等词语用来表示名称,而并不表示任何特定的顺序。
最后应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。

Claims (10)

1.一种视频服务提供方法,其特征在于,所述方法包括:
接收用户发送的携带有视频标识的视频请求,所述视频请求用于请求视频服务;
计算所述视频标识的第一哈希值;
在预先生成的哈希环上,查找所述第一哈希值所处的位置,其中,所述哈希环由多个边缘节点的虚拟节点的第二哈希值组成;
确定所述位置所属的第一虚拟节点,以及确定所述第一虚拟节点对应的第一边缘节点;
使用所述第一边缘节点为所述用户提供所述视频服务。
2.根据权利要求1所述的方法,其特征在于,所述接收用户发送的携带有视频标识的视频请求之前,所述方法还包括:
获取预设的节点扩充系数;
针对每个所述边缘节点,根据所述节点扩充系数以及多个所述边缘节点的带宽,计算所述边缘节点需要生成的虚拟节点的数量;
根据所述数量以及所述边缘节点的节点标识,生成每个所述虚拟节点的节点标识;
计算每个所述虚拟节点的节点标识的第二哈希值;
根据多个所述第二哈希值,生成所述哈希环。
3.根据权利要求2所述的方法,其特征在于,所述计算每个所述虚拟节点的节点标识的第二哈希值之后,所述方法还包括:
按照所述第二哈希值从小到大的顺序,将多个所述虚拟节点排列成圆环;
针对所述圆环上任意相邻的两个虚拟节点,判断所述两个虚拟节点是否对应同一个边缘节点;
若所述两个虚拟节点对应同一个边缘节点,删除所述两个虚拟节点中第二哈希值较小的虚拟节点;
所述根据多个所述第二哈希值,生成所述哈希环包括:
将删除虚拟节点后的圆环确定为所述哈希环。
4.根据权利要求1所述的方法,其特征在于,所述确定所述位置所属的第一虚拟节点包括:
若所述位置位于两个虚拟节点之间,将所述两个虚拟节点中第二哈希值较大的虚拟节点确定为第一虚拟节点;
确定所述位置属于所述第一虚拟节点。
5.根据权利要求4所述的方法,其特征在于,所述确定所述第一虚拟节点对应的第一边缘节点之后,所述方法还包括:
根据所述第一边缘节点的带宽以及负载,判断所述第一边缘节点是否具有服务能力;
若所述第一边缘节点不具有服务能力,从所述第一虚拟节点开始,按照第二哈希值从小到大的顺序,在所述哈希环上查找第二虚拟节点,其中,所述第二虚拟节点对应的第二边缘节点具有服务能力;
所述使用所述第一边缘节点为所述用户提供所述视频服务包括:
使用所述第二边缘节点为所述用户提供所述视频服务。
6.根据权利要求4所述的方法,其特征在于,所述根据所述第一边缘节点的带宽以及负载,判断所述第一边缘节点是否具有服务能力包括:
判断所述第一边缘节点的带宽是否超过预设带宽阈值,以及判断所述第一边缘节点的负载是否超过预设负载阈值;
若所述第一边缘节点的带宽未超过预设带宽阈值,且所述第一边缘节点的负载未超过预设负载阈值,确定所述第一边缘节点具有服务能力。
7.根据权利要求1至6中任一项所述的方法,其特征在于,所述接收用户发送的携带有视频标识的视频请求之后,所述方法还包括:
判断所述用户是否具有所述视频服务的访问权限;
若所述用户具有所述视频服务的访问权限,计算所述视频标识的第一哈希值。
8.一种视频服务提供装置,其特征在于,所述视频服务提供装置包括:
接收模块,用于接收用户发送的携带有视频标识的视频请求,所述视频请求用于请求视频服务;
计算模块,用于计算所述视频标识的第一哈希值;
查找模块,用于在预先生成的哈希环上,查找所述第一哈希值所处的位置,其中,所述哈希环由多个边缘节点的虚拟节点的第二哈希值组成;
确定模块,用于确定所述位置所属的第一虚拟节点,以及确定所述第一虚拟节点对应的第一边缘节点;
提供模块,用于使用所述第一边缘节点为所述用户提供所述视频服务。
9.一种电子设备,其特征在于,所述电子设备包括处理器和存储器,所述处理器用于执行存储器中存储的计算机程序以实现如权利要求1至7中任意一项所述的视频服务提供方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有至少一个指令,所述至少一个指令被处理器执行时实现如权利要求1至7中任意一项所述的视频服务提供方法。
CN201910934519.XA 2019-09-29 2019-09-29 视频服务提供方法、装置、电子设备及存储介质 Pending CN110688523A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910934519.XA CN110688523A (zh) 2019-09-29 2019-09-29 视频服务提供方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910934519.XA CN110688523A (zh) 2019-09-29 2019-09-29 视频服务提供方法、装置、电子设备及存储介质

Publications (1)

Publication Number Publication Date
CN110688523A true CN110688523A (zh) 2020-01-14

Family

ID=69111050

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910934519.XA Pending CN110688523A (zh) 2019-09-29 2019-09-29 视频服务提供方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN110688523A (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112565385A (zh) * 2020-11-30 2021-03-26 北京达佳互联信息技术有限公司 服务器地址信息的配置方法、装置及电子设备
CN112948120A (zh) * 2021-03-18 2021-06-11 广东好太太智能家居有限公司 负载均衡方法、系统、装置和存储介质
CN113778645A (zh) * 2021-08-18 2021-12-10 煤炭科学研究总院 基于边缘计算的任务调度方法、装置、设备及存储介质
US20220201555A1 (en) * 2020-12-21 2022-06-23 Quanta Cloud Technology Inc. Method And System For Maximizing Uplink Bandwidth In A Communication System
CN114866799A (zh) * 2022-05-11 2022-08-05 北京奇艺世纪科技有限公司 一种服务器调度方法及装置
CN115412737A (zh) * 2022-08-30 2022-11-29 上海哔哩哔哩科技有限公司 直播回源中继节点确定方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1583326A2 (en) * 2004-03-31 2005-10-05 Microsoft Corporation Routing in peer-to-peer networks
CN106503139A (zh) * 2016-10-20 2017-03-15 上海携程商务有限公司 动态数据存取方法及系统
CN110083313A (zh) * 2019-05-06 2019-08-02 北京奇艺世纪科技有限公司 一种数据缓存方法及装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1583326A2 (en) * 2004-03-31 2005-10-05 Microsoft Corporation Routing in peer-to-peer networks
CN106503139A (zh) * 2016-10-20 2017-03-15 上海携程商务有限公司 动态数据存取方法及系统
CN110083313A (zh) * 2019-05-06 2019-08-02 北京奇艺世纪科技有限公司 一种数据缓存方法及装置

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112565385A (zh) * 2020-11-30 2021-03-26 北京达佳互联信息技术有限公司 服务器地址信息的配置方法、装置及电子设备
CN112565385B (zh) * 2020-11-30 2023-03-14 北京达佳互联信息技术有限公司 服务器地址信息的配置方法、装置及电子设备
US20220201555A1 (en) * 2020-12-21 2022-06-23 Quanta Cloud Technology Inc. Method And System For Maximizing Uplink Bandwidth In A Communication System
US11917230B2 (en) * 2020-12-21 2024-02-27 Quanta Cloud Technology Inc. Method and system for maximizing uplink bandwidth in a communication system
CN112948120A (zh) * 2021-03-18 2021-06-11 广东好太太智能家居有限公司 负载均衡方法、系统、装置和存储介质
CN113778645A (zh) * 2021-08-18 2021-12-10 煤炭科学研究总院 基于边缘计算的任务调度方法、装置、设备及存储介质
CN114866799A (zh) * 2022-05-11 2022-08-05 北京奇艺世纪科技有限公司 一种服务器调度方法及装置
CN114866799B (zh) * 2022-05-11 2024-04-05 北京奇艺世纪科技有限公司 一种服务器调度方法及装置
CN115412737A (zh) * 2022-08-30 2022-11-29 上海哔哩哔哩科技有限公司 直播回源中继节点确定方法及装置
CN115412737B (zh) * 2022-08-30 2024-03-08 上海哔哩哔哩科技有限公司 直播回源中继节点确定方法及装置

Similar Documents

Publication Publication Date Title
CN110688523A (zh) 视频服务提供方法、装置、电子设备及存储介质
CN110677405B (zh) 一种数据处理方法、装置、电子设备及存储介质
CN108769230B (zh) 交易数据存储方法、装置、服务器及存储介质
CN110830564B (zh) Cdn调度方法、装置、系统及计算机可读存储介质
CN110519183B (zh) 一种节点限速的方法、装置、电子设备及存储介质
US11889133B2 (en) Burst traffic processing method, computer device and readable storage medium
CN111585887B (zh) 基于多个网络的通信方法、装置、电子设备及存储介质
CN103118084A (zh) 一种主节点的选举方法及节点
CN106375471B (zh) 一种边缘节点确定方法及装置
CN112039799B (zh) 网络带宽管理的方法、服务器、系统、设备及介质
CN111355986B (zh) 一种直播间中的消息处理方法、装置和存储介质
CN110719273A (zh) 回源节点的确定方法、服务器及计算机可读存储介质
CN113361913A (zh) 一种通信业务编排方法、装置、计算机设备及存储介质
CN108696364B (zh) 请求消息处理方法、聊天室消息服务器及聊天室系统
EP3370166B1 (en) Method and apparatus for model parameter fusion
CN111901490A (zh) 资源共享方法、装置、计算机装置及存储介质
CN110099292B (zh) 一种数据中心节点确定方法、装置及电子设备
CN112423145B (zh) 数据处理方法、装置、系统、服务器及介质
US11206302B2 (en) Method and device for feeding back a resource file
CN112073215B (zh) 一种实现应用的方法及业务控制器
CN111556109B (zh) 请求处理方法、装置、电子设备和存储介质
CN114554251B (zh) 多媒体数据的请求方法和装置、存储介质及电子装置
CN106936643B (zh) 一种设备联动方法以及终端设备
CN115065664A (zh) 一种互联网协议地址的回收方法、电子设备及存储介质
CN115378959A (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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20200114