CN109040232A - 一种视频会议的负载均衡方法、装置、设备及其存储介质 - Google Patents
一种视频会议的负载均衡方法、装置、设备及其存储介质 Download PDFInfo
- Publication number
- CN109040232A CN109040232A CN201810860376.8A CN201810860376A CN109040232A CN 109040232 A CN109040232 A CN 109040232A CN 201810860376 A CN201810860376 A CN 201810860376A CN 109040232 A CN109040232 A CN 109040232A
- Authority
- CN
- China
- Prior art keywords
- server
- mapping value
- cryptographic hash
- hash
- value
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 46
- 238000013507 mapping Methods 0.000 claims abstract description 124
- 230000006854 communication Effects 0.000 claims abstract description 77
- 238000004891 communication Methods 0.000 claims abstract description 76
- 238000012545 processing Methods 0.000 claims abstract description 25
- 238000004364 calculation method Methods 0.000 claims description 20
- 230000015654 memory Effects 0.000 claims description 18
- 238000004590 computer program Methods 0.000 claims description 3
- 230000000977 initiatory effect Effects 0.000 claims description 3
- 235000013399 edible fruits Nutrition 0.000 claims 1
- 230000006870 function Effects 0.000 description 13
- 238000010586 diagram Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000011664 signaling Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000029058 respiratory gaseous exchange Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000005303 weighing Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/14—Systems for two-way working
- H04N7/15—Conference systems
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Multimedia (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明公开了一种视频会议的负载均衡方法、装置、设备及其存储介质。该方法包括:对客户端发起的通信请求进行哈希处理;获得服务列表中每个服务器对应的第二哈希值,并将所述第二哈希值按照第一预设规则映射到线性数值空间生成第二映射值;将第一映射值按照第二预设规则与所述第二映射值进行匹配;匹配成功的第二映射值为目标第二映射值。实现在将同一个会议室的所有客户端调度到同一组服务端单元中的情况下均衡服务器负载。
Description
技术领域
本发明涉及通信领域,尤其涉及一种视频会议的负载均衡方法、装置、设备及其存储介质。
背景技术
目前,视频会议已经迈向互联网领域,实现了可云化部署,并且要求会议的呼叫资源和媒体资源的可分布式,可伸缩性,使呼叫资源和媒体资源能够达到最优使用。
现有技术中,一般是,通过调度器接收服务器上报的呼叫资源和媒体资源,该调度器接收该服务器的呼叫资源请求,该调度器根据该呼叫资源请求,给该服务器管理的终端分配该呼叫资源中空闲的呼叫资源接入节点,调度器接收该呼叫资源接入节点对应的呼叫节点的媒体资源请求,调度器根据该媒体资源请求,给该终端分配该媒体资源中的空闲的媒体资源接入节点。
这样的涉及可以解决大量用户的会议接入的问题。但是针对同一会议室的客户端会分配到不同的服务器进行处理,需要额外开发来实现服务器间数据的同步,额外占用服务器资源。
发明内容
本发明提供一种视频会议的负载均衡方法、装置、设备及其存储介质,以实现在将同一个会议室的所有客户端调度到同一组服务端单元中的情况下均衡服务器负载。
第一方面,本发明实施例提供了一种视频会议的负载均衡方法,包括:
对客户端发起的通信请求进行哈希处理;其中,所述哈希处理的结果为第一哈希值;
获得服务列表中每个服务器对应的第二哈希值,并将所述第二哈希值按照第一预设规则映射到线性数值空间生成第二映射值;其中,所述线性数值空间的起点和终点关联以使所述线性数值空间组成数字闭环;
将第一映射值按照第二预设规则与所述第二映射值进行匹配;其中,所述第一哈希值按照第一预设规则映射到线性数值空间生成第一映射值;匹配成功的第二映射值为目标第二映射值;
将所述通信请求调度给所述目标第二映射值对应的服务器。
第二方面,本发明实施例还提供了一种视频会议的负载均衡装置,包括:
第一哈希模块,用于对客户端发起的通信请求进行哈希处理;其中,所述哈希处理的结果为第一哈希值;
第二哈希模块,用于获得服务列表中每个服务器对应的第二哈希值,并将所述第二哈希值按照第一预设规则映射到线性数值空间生成第二映射值;其中,所述线性数值空间的起点和终点关联以使所述线性数值空间组成数字闭环;
哈希匹配模块,用于将第一映射值按照第二预设规则与所述第二映射值进行匹配;其中,所述第一哈希值按照第一预设规则映射到线性数值空间生成第一映射值;匹配成功的第二映射值为目标第二映射值。
请求调度模块,用于将所述通信请求调度给所述目标第二映射值对应的服务器。
第三方面,本发明实施例还提供了一种设备,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如第一方面任一所述的一种视频会议的负载均衡方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如第一方面任一所述的一种视频会议的负载均衡方法。
本发明通过计算服务器的哈希值并进行处理,计算客户端请求的哈希值并进行处理,并将处理后的两种哈希值进行匹配,解决针对同一会议室的客户端会分配到不同的服务器进行处理,需要额外开发来实现服务器间数据的同步,额外占用服务器资源的问题,实现在将同一个会议室的所有客户端调度到同一组服务端单元中的情况下均衡服务器负载。
附图说明
图1为本发明实施例一提供的一种视频会议的负载均衡方法的流程图;
图2为本发明实施例一提供的服务器与客户端通信请求映射到数字闭环的示意图;
图3为本发明实施例二提供的一种视频会议的负载均衡方法的流程图;
图4为本发明实施例二提供的服务器与客户端通信请求映射到数字闭环的示意图;
图5为本发明实施例三提供的一种视频会议的负载均衡装置的结构图;
图6为本发明实施例四提供的一种设备的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
实施例一
图1为本发明实施例一提供的一种视频会议的负载均衡方法的流程图。该方法通过在客户端与服务器通讯过程中设立一个负载均衡模块,用来平衡客户端与服务器之间的负载关系。该方法主要通过软件和/或硬件方式实现的视频会议的负载均衡装置来执行,该装置可集成在客户端、服务器端或单独设置。
其中,客户端是指与服务器相对应,为客户提供本地服务的程序。除了一些只在本地运行的应用程序之外,一般安装在普通的客户机上,需要与服务端互相配合运行。因特网发展以后,较常用的用户端包括了如万维网使用的网页浏览器,收寄电子邮件时的电子邮件客户端,以及即时通讯的客户端软件等。对于这一类应用程序,需要网络中有相应的服务器和服务程序来提供相应的服务,如数据库服务,电子邮件服务等等。这样在客户机和服务器端,需要建立特定的通信连接,来保证应用程序的正常运行。本实施例中的客户端一般是指用于视频会议的设备。服务器是提供计算服务的设备。由于服务器需要响应服务请求,并进行处理,因此一般来说服务器应具备承担服务并且保障服务的能力。服务器的构成包括处理器、硬盘、内存、系统总线等,和通用的计算机架构类似,但是由于需要提供高可靠的服务,因此在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。负载均衡建立在现有网络结构之上,它提供了一种廉价有效透明的方法扩展网络设备和服务器的带宽、增加吞吐量、加强网络数据处理能力、提高网络的灵活性和可用性。
结合图1,本实施例具体包括如下步骤:
S110、对客户端发起的通信请求进行哈希处理。其中,所述哈希处理的结果为第一哈希值。
其中,通信请求是指客户端发起的想要与服务器建立连接的请求。哈希处理是指就是把任意长度的输入(又叫做预映射pre-image)通过散列算法变换成固定长度的输出,该输出就是散列值。这种转换是一种压缩映射,也就是,散列值的空间通常远小于输入的空间,不同的输入可能会散列成相同的输出,所以不可能从散列值来确定唯一的输入值。简单的说就是一种将任意长度的消息压缩到某一固定长度的消息摘要的函数。
具体的,负载均衡模块接收客户端向服务器发起的通信请求,对该通信请求进行哈希处理,获取所述通信请求的哈希值,并将所述哈希值记为第一哈希值。
S120、获得服务列表中每个服务器对应的第二哈希值,并将所述第二哈希值按照第一预设规则映射到线性数值空间生成第二映射值。其中,所述线性数值空间的起点和终点关联以使所述线性数值空间组成数字闭环。
其中,服务列表是指包含所有服务器可以提供的服务的信息的列表,该列表包括服务IP(Internet Protocol,网络之间互连的协议)端口和标识,也可以配合服务发现组件一起使用。线性数值是虚构的一个空间,一般将该线性数值的范围设定为0~232-1。将线性数值的起点(0)和终点(232-1)关联,组成数字闭环。第一预设规则是指取哈希值的前四个字节的操作。第二映射值是对第二哈希值进行处理后获得的数值,一般是取第二哈希值的前四个字节(即232位)作为其对应的第二映射值。
具体的,一个服务器可提供多个服务,负载均衡装置中要配置所有服务器提供的服务的列表,可以选择服务列表中的服务IP地址(同一服务器的多个服务的IP地址相同)进行哈希算法,所述服务IP地址的哈希值为其对应的服务器的第二哈希值。对所述第二哈希值进行取值处理,取所述第二哈希值的前四个字节作为其第二映射值。构造一个范围设定为0~232-1的线性数值空间,将线性数值的起点(0)和终点(232-1)关联,组成数字闭环。
S130、将第一映射值按照第二预设规则与所述第二映射值进行匹配。
其中,所述第一哈希值按照第一预设规则映射到线性数值空间生成第一映射值;匹配成功的第二映射值为目标第二映射值。目标映射值代表与第一映射值匹配成功的服务器经过系列处理后的值。第二预设规则将数字闭环上第一映射值按顺时针方式与最接近的第二映射值匹配;或将数字闭环上第一映射值按逆时针方式与最接近的第二映射值匹配。
具体的,图2为本发明实施例一提供的服务器与客户端通信请求映射到数字闭环的示意图。参考图2,图2表示线性数值的起点(0)和终点(232-1)关联,组成数字闭环。以有服务器1、服务器2、服务器3和服务器4这四台服务器为例进行描述,对四台服务器分别求哈希值,分别取其前四个字节的哈希值,并标注在数字闭环上(记为21、22、23和24,分别对应服务器1、服务器2、服务器3和服务器4)。有五个客户端通信请求(记为通信请求1、通信请求2、通信请求3、通信请求4和通信请求5),对五个客户端通信请求分别求哈希值,分别取其前四个字节的哈希值,并标注在数字闭环上(记为R1、R2、R3、R4和R5)。若采用顺时针的方式进行匹配,则匹配结果如表一所示:
表一
若采用逆时针的方式进行匹配,则匹配结果如表二所示:
表二
S140、将所述通信请求调度给所述目标第二映射值对应的服务器。
具体的,负载均衡装置通过在数字闭环上将服务器与客户端通信请求进行匹配,确定客户端通信请求应该传递给某一服务器处理后,将该客户端通信请求传递给其对应的服务器进行处理。
本实施例通过计算服务器的哈希值并进行处理,计算客户端请求的哈希值并进行处理,并将处理后的两种哈希值进行匹配,解决针对同一会议室的客户端会分配到不同的服务器进行处理,需要额外开发来实现服务器间数据的同步,额外占用服务器资源的问题,实现在将同一个会议室的所有客户端调度到同一组服务端单元中的情况下均衡服务器负载。
实施例二
图3为本发明实施例二提供的一种视频会议的负载均衡方法的流程图。本实施例是在实施例一基础上的细化,主要描述了实现负载均衡装置具体是如何调度资源的。具体的:
所述对客户端发起的通信请求进行哈希处理,具体包括:
解析所述通信请求中携带的标识号字段,获得标识信息,所述标识号字段对应于所述客户端;
计算所述标识信息的哈希值作为第一哈希值。
所述获得服务列表中每个服务器对应的第二哈希值,并将所述第二哈希值按照第一预设规则映射到线性数值空间生成第二映射值,具体包括:
配置所有提供服务的服务器列表;其中,所述服务器列表至少记录有服务器地址端口;
对所述服务器列表进行哈希计算,获得服务器列表中每个服务器对应的第二哈希值;
将所述第二哈希值按照第一预设规则映射到线性数值空间生成第二映射值。
所述将第一映射值按照第二预设规则与所述第二映射值进行匹配,具体包括:
将数字闭环上第一映射值按顺时针方式与最接近的第二映射值匹配;
或将数字闭环上第一映射值按逆时针方式与最接近的第二映射值匹配。
所述对所述服务器列表进行哈希计算,获得服务器列表中每个服务器对应的第二哈希值,具体包括:
对所述服务器列表进行多次哈希计算,获得一个服务器的本身哈希值和多个虚拟哈希值;
获得服务器列表对应的多个第二哈希值,其中,所述多个第二哈希值包括本身哈希值和多个虚拟哈希值。
所述将所述通信请求调度给所述目标第二映射值对应的服务器,具体包括:
若第一映射值按照第二预设规则匹配到的第二映射值为服务器本身哈希值,则直接将通信请求调度给所述目标第二映射值代表的服务器;
若第一映射值按照第二预设规则匹配到的第二映射值为服务器虚拟哈希值,则查找所述虚拟哈希值对应的真实服务器,将客户端的通信请求调度给所述真实服务器。
服务器的本身哈希值和多个虚拟哈希值在预设容错范围内均匀分布于预设数值空间。
具体的,参考图3,本实施例提供的方法具体包括:
S210、解析所述通信请求中携带的标识号字段,获得标识信息,所述标识号字段对应于所述客户端。
其中,通信请求依赖于同时与连接服务(confserver)和媒体服务(mediaserver)通信,其中,confserver主要负责信令通信,而mediaserver则负责媒体数据通信。客户端经过远程过程调用(Remote Procedure Call,RPC)与confserver进行信令通信。它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议。RPC协议假定某些传输协议的存在,如TCP(Transmission Control Protocol,传输控制协议)或UDP(UserDatagramProtocol,用户数据报协议),为通信程序之间携带信息数据。在OSI(OpenSystemInterconnection,开放式系统互联)网络通信模型中,RPC跨越了传输层和应用层。RPC使得开发包RPC包括网络分布式多程序在内的应用程序更加容易。标识号字段是指存在于RPC头部的标号信息。召开同一个视频会议的多个客户端带有相同的标识信息。
具体的,客户端与服务器之间的RPC通信均要通过负载均衡装置,负载均衡装置解析RPC,获得每条通信请求中携带的标号信息。
S220、计算所述标识信息的哈希值作为第一哈希值。
其中,常用哈希函数包括:直接取余法、乘法取整法和平方取中法。
具体的,负载均衡装置解析RPC,获得每条通信请求中携带的标号信息。计算所述标识信息的哈希值作为第一哈希值。本实施例对采用何种具体的哈希函数不做要求,但是优选采用同一哈希函数获得第一哈希值。
S230、配置所有提供服务的服务器列表。其中,所述服务器列表至少记录有服务器地址端口。
其中,服务是依赖于服务器存在的与一条通信请求信息建立连接的单位。负载均衡装置中配置所有提供服务的列表,包括服务地址端口和标识,以使得服务与服务器有对应关系。服务器列表是指可以调用的服务器的列表,该列表是变动的,随着服务器提供的服务是否已经完全被占用,在服务器列表中添加或删除服务器。
具体的,将服务器器列表配置于负载均衡装置中。
S240、对所述服务器列表进行哈希计算,获得服务器列表中每个服务器对应的第二哈希值。
具体的,具体的,负载均衡装置解析服务器列表,计算所述服务器列表的哈希值作为第二哈希值。本实施例对采用何种具体的哈希函数不做要求,但是优选采用同一哈希函数获得第二哈希值。
可选的,所述对所述服务器列表进行哈希计算,获得服务器列表中每个服务器对应的第二哈希值,还包括:对所述服务器列表进行多次哈希计算,获得一个服务器的本身哈希值和多个虚拟哈希值;获得服务器列表对应的多个第二哈希值,其中,所述多个第二哈希值包括本身哈希值和多个虚拟哈希值。
其中,虚拟哈希值是指对哈希值进行哈希计算后获得的新的哈希值。
具体的,对所述服务器列表进行多次哈希计算,使得一个服务器列表中的服务器有多个对应的哈希值。将这多个哈希值中通过所述服务器列表进行哈希计算获得的哈希值成为本身哈希,将对哈希值进行计算获得的哈希值记为虚拟哈希值。本实施例对要进行几次哈希计算没有具体要求,但是应该对所述服务器列表进行同样次数的哈希计算。
S250、将所述第二哈希值按照第一预设规则映射到线性数值空间生成第二映射值。
具体的,一个服务器可提供过多个服务,负载均衡装置中要配置所有服务器提供的服务的列表,可以选择服务列表中的服务IP地址(同一服务器的多个服务的IP地址相同)进行哈希算法,所述服务IP地址的哈希值为其对应的服务器的第二哈希值。对所述第二哈希值进行取值处理,取所述第二哈希值的前四个字节作为其第二映射值。构造一个范围设定为0~232-1的线性数值空间,将线性数值的起点(0)和终点(232-1)关联,组成数字闭环。
S260、将第一映射值按照第二预设规则与所述第二映射值进行匹配。
可选的,所述将所述通信请求调度给所述目标第二映射值对应的服务器,具体包括:若第一映射值按照第二预设规则匹配到的第二映射值为服务器本身哈希值,则直接将通信请求调度给所述目标第二映射值代表的服务器;若第一映射值按照第二预设规则匹配到的第二映射值为服务器虚拟哈希值,则查找所述虚拟哈希值对应的真实服务器,将客户端的通信请求调度给所述真实服务器。
其中,所述第一哈希值按照第一预设规则映射到线性数值空间生成第一映射值;匹配成功的第二映射值为目标第二映射值。目标映射值代表与第一映射值匹配成功的服务器经过系列处理后的值。第二预设规则将数字闭环上第一映射值按顺时针方式与最接近的第二映射值匹配;或将数字闭环上第一映射值按逆时针方式与最接近的第二映射值匹配。
具体的,图4为本发明实施例二提供的服务器与客户端通信请求映射到数字闭环的示意图。参考图4,图4表示线性数值的起点(0)和终点(232-1)关联,组成数字闭环。以有服务器1、服务器2和服务器3为例进行描述。对三台服务器分别求哈希值,分别取其前四个字节的哈希值,并标注在数字闭环上,服务器1的本身哈希值在数字闭环上标注为410,对服务器1的本身哈希值再进行两次哈希运算,分别在数字闭环上标注为411和412。有五个客户端通信请求(记为通信请求1、通信请求2、通信请求3、通信请求4和通信请求5),对五个客户端通信请求分别求哈希值,分别取其前四个字节的哈希值,并标注在数字闭环上(记为41、42、43、44和45)。若采用顺时针的方式进行匹配,则匹配结果如表三所示:
表三
若采用逆时针的方式进行匹配,则匹配结果如表四所示:
表四
S270、将所述通信请求调度给所述目标第二映射值对应的服务器。
具体的,负载均衡装置通过在数字闭环上将服务器与客户端通信请求进行匹配,确定客户端通信请求应该传递给某一服务器处理后,将该客户端通信请求传递给其对应的服务器进行处理。
本实施例通过计算服务器的哈希值并进行处理,计算客户端请求的哈希值并进行处理,并将处理后的两种哈希值进行匹配,解决针对同一会议室的客户端会分配到不同的服务器进行处理,需要额外开发来实现服务器间数据的同步,额外占用服务器资源的问题,实现在将同一个会议室的所有客户端调度到同一组服务端单元中的情况下均衡服务器负载。
实施例三
图5为本发明实施例三提供的一种视频会议的负载均衡装置的结构图。该装置包括:第一哈希模块51、第二哈希模块52、哈希匹配模块53和请求调度模块54。其中:
第一哈希模块51,用于对客户端发起的通信请求进行哈希处理;其中,所述哈希处理的结果为第一哈希值;
第二哈希模块52,用于获得服务列表中每个服务器对应的第二哈希值,并将所述第二哈希值按照第一预设规则映射到线性数值空间生成第二映射值;其中,所述线性数值空间的起点和终点关联以使所述线性数值空间组成数字闭环;
哈希匹配模块53,用于将第一映射值按照第二预设规则与所述第二映射值进行匹配;其中,所述第一哈希值按照第一预设规则映射到线性数值空间生成第一映射值;匹配成功的第二映射值为目标第二映射值;
请求调度模块54,用于将所述通信请求调度给所述目标第二映射值对应的服务器。
本实施例通过计算服务器的哈希值并进行处理,计算客户端请求的哈希值并进行处理,并将处理后的两种哈希值进行匹配,解决针对同一会议室的客户端会分配到不同的服务器进行处理,需要额外开发来实现服务器间数据的同步,额外占用服务器资源的问题,实现在将同一个会议室的所有客户端调度到同一组服务端单元中的情况下均衡服务器负载。
在上述实施例的基础上,第一哈希模块,还用于:
解析所述通信请求中携带的标识号字段,获得标识信息,所述标识号字段对应于所述客户端;
计算所述标识信息的哈希值作为第一哈希值。
在上述实施例的基础上,第二哈希模块,还用于:
置所有提供服务的服务器列表;其中,所述服务器列表至少记录有服务器地址端口;
对所述服务器列表进行哈希计算,获得服务器列表中每个服务器对应的第二哈希值;具体包括:对所述服务器列表进行多次哈希计算,获得一个服务器的本身哈希值和多个虚拟哈希值;获得服务器列表对应的多个第二哈希值,其中,所述多个第二哈希值包括本身哈希值和多个虚拟哈希值。
将所述第二哈希值按照第一预设规则映射到线性数值空间生成第二映射值。
在上述实施例的基础上,哈希匹配模块,还用于:
将数字闭环上第一映射值按顺时针方式与最接近的第二映射值匹配;
或将数字闭环上第一映射值按逆时针方式与最接近的第二映射值匹配。
在上述实施例的基础上,请求调度模块,还用于:
若第一映射值按照第二预设规则匹配到的第二映射值为服务器本身哈希值,则直接将通信请求调度给所述目标第二映射值代表的服务器;
若第一映射值按照第二预设规则匹配到的第二映射值为服务器虚拟哈希值,则查找所述虚拟哈希值对应的真实服务器,将客户端的通信请求调度给所述真实服务器。其中,服务器的本身哈希值和多个虚拟哈希值在预设容错范围内均匀分布于预设数值空间。
本实施例提供的视频会议的负载均衡装装置可用于执行上述任一实施例提供的视频会议的负载均衡方法,具有相应的功能和有益效果。
实施例四
图6为本发明实施例四提供的一种设备的结构示意图。如图6所示,该设备包括处理器60、存储器61、通信模块62、输入装置63和输出装置64;设备中处理器60的数量可以是一个或多个,图6中以一个处理器60为例;设备中的处理器60、存储器61、通信模块62、输入装置63和输出装置64可以通过总线或其他方式连接,图6中以通过总线连接为例。
存储器61作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本实施例中的一种视频会议的负载均衡方法对应的模块(例如,一种视频会议的负载均衡装置中的第一哈希模块51、第二哈希模块52、哈希匹配模块53和请求调度模块54)。处理器60通过运行存储在存储器61中的软件程序、指令以及模块,从而执行设备的各种功能应用以及数据处理,即实现上述的一种视频会议的负载均衡方法。
存储器61可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据设备的使用所创建的数据等。此外,存储器62可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器61可进一步包括相对于处理器60远程设置的存储器,这些远程存储器可以通过网络连接至设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
通信模块62,用于与显示屏建立连接,并实现与显示屏的数据交互。输入装置63可用于接收输入的数字或字符信息,以及产生与设备的用户设置以及功能控制有关的键信号输入。
本实施例提供的一种设备,可执行本发明任一实施例提供的一种视频会议的负载均衡方法,具体相应的功能和有益效果。
实施例五
本发明实施例五还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行一种视频会议的负载均衡方法,该方法包括:
对客户端发起的通信请求进行哈希处理;其中,所述哈希处理的结果为第一哈希值;
获得服务列表中每个服务器对应的第二哈希值,并将所述第二哈希值按照第一预设规则映射到线性数值空间生成第二映射值;其中,所述线性数值空间的起点和终点关联以使所述线性数值空间组成数字闭环;
将第一映射值按照第二预设规则与所述第二映射值进行匹配;其中,所述第一哈希值按照第一预设规则映射到线性数值空间生成第一映射值;匹配成功的第二映射值为目标第二映射值;
将所述通信请求调度给所述目标第二映射值对应的服务器。
当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本发明任一实施例所提供的一种视频会议的负载均衡方法中的相关操作。
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
值得注意的是,上述在视频会议的负载均衡装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (10)
1.一种视频会议的负载均衡方法,其特征在于,包括:
对客户端发起的通信请求进行哈希处理;其中,所述哈希处理的结果为第一哈希值;
获得服务列表中每个服务器对应的第二哈希值,并将所述第二哈希值按照第一预设规则映射到线性数值空间生成第二映射值;其中,所述线性数值空间的起点和终点关联以使所述线性数值空间组成数字闭环;
将第一映射值按照第二预设规则与所述第二映射值进行匹配;其中,所述第一哈希值按照第一预设规则映射到线性数值空间生成第一映射值;匹配成功的第二映射值为目标第二映射值;
将所述通信请求调度给所述目标第二映射值对应的服务器。
2.根据权利要求1所述的方法,其特征在于,所述对客户端发起的通信请求进行哈希处理,具体包括:
解析所述通信请求中携带的标识号字段,获得标识信息,所述标识号字段对应于所述客户端;
计算所述标识信息的哈希值作为第一哈希值。
3.根据权利要求1所述的方法,其特征在于,所述获得服务列表中每个服务器对应的第二哈希值,并将所述第二哈希值按照第一预设规则映射到线性数值空间生成第二映射值,具体包括:
配置所有提供服务的服务器列表;其中,所述服务器列表至少记录有服务器地址端口;
对所述服务器列表进行哈希计算,获得服务器列表中每个服务器对应的第二哈希值;
将所述第二哈希值按照第一预设规则映射到线性数值空间生成第二映射值。
4.根据权利要求1所述的方法,其特征在于,所述将第一映射值按照第二预设规则与所述第二映射值进行匹配,具体包括:
将数字闭环上第一映射值按顺时针方式与最接近的第二映射值匹配;
或将数字闭环上第一映射值按逆时针方式与最接近的第二映射值匹配。
5.根据权利要求3所述的方法,其特征在于,所述对所述服务器列表进行哈希计算,获得服务器列表中每个服务器对应的第二哈希值,具体包括:
对所述服务器列表进行多次哈希计算,获得一个服务器的本身哈希值和多个虚拟哈希值;
获得服务器列表对应的多个第二哈希值,其中,所述多个第二哈希值包括本身哈希值和多个虚拟哈希值。
6.根据权利要求5所述的方法,其特征在于,所述将所述通信请求调度给所述目标第二映射值对应的服务器,具体包括:
若第一映射值按照第二预设规则匹配到的第二映射值为服务器本身哈希值,则直接将通信请求调度给所述目标第二映射值代表的服务器;
若第一映射值按照第二预设规则匹配到的第二映射值为服务器虚拟哈希值,则查找所述虚拟哈希值对应的真实服务器,将客户端的通信请求调度给所述真实服务器。
7.根据权利要求5所述的方法,其特征在于,服务器的本身哈希值和多个虚拟哈希值在预设容错范围内均匀分布于预设数值空间。
8.一种视频会议的负载均衡装置,其特征在于,包括:
第一哈希模块,用于对客户端发起的通信请求进行哈希处理;其中,所述哈希处理的结果为第一哈希值;
第二哈希模块,用于获得服务列表中每个服务器对应的第二哈希值,并将所述第二哈希值按照第一预设规则映射到线性数值空间生成第二映射值;其中,所述线性数值空间的起点和终点关联以使所述线性数值空间组成数字闭环;
哈希匹配模块,用于将第一映射值按照第二预设规则与所述第二映射值进行匹配;其中,所述第一哈希值按照第一预设规则映射到线性数值空间生成第一映射值;匹配成功的第二映射值为目标第二映射值;
请求调度模块,用于将所述通信请求调度给所述目标第二映射值对应的服务器。
9.一种设备,其特征在于,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-7任一所述的一种视频会议的负载均衡方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-7任一所述的一种视频会议的负载均衡方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810860376.8A CN109040232A (zh) | 2018-08-01 | 2018-08-01 | 一种视频会议的负载均衡方法、装置、设备及其存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810860376.8A CN109040232A (zh) | 2018-08-01 | 2018-08-01 | 一种视频会议的负载均衡方法、装置、设备及其存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109040232A true CN109040232A (zh) | 2018-12-18 |
Family
ID=64648240
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810860376.8A Pending CN109040232A (zh) | 2018-08-01 | 2018-08-01 | 一种视频会议的负载均衡方法、装置、设备及其存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109040232A (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110457128A (zh) * | 2019-07-11 | 2019-11-15 | 阿里巴巴集团控股有限公司 | 任务分配方法、装置和系统 |
CN110888735A (zh) * | 2019-11-12 | 2020-03-17 | 厦门网宿有限公司 | 基于一致性哈希的分布式消息分发方法、装置和调度节点 |
CN111698270A (zh) * | 2019-03-12 | 2020-09-22 | 浙江宇视科技有限公司 | 一种分布式横向扩展协商服务规模的方法及装置 |
CN111966682A (zh) * | 2020-08-14 | 2020-11-20 | 苏州浪潮智能科技有限公司 | 一种白名单防护匹配方法、系统、终端及存储介质 |
CN112202755A (zh) * | 2020-09-25 | 2021-01-08 | 浙江华创视讯科技有限公司 | 一种服务器分配方法、装置、设备及介质 |
CN112423145A (zh) * | 2020-11-16 | 2021-02-26 | 北京达佳互联信息技术有限公司 | 数据处理方法、装置、系统、服务器及介质 |
CN112737968A (zh) * | 2020-12-31 | 2021-04-30 | 北京大米科技有限公司 | 一种流量处理的方法、装置、可读存储介质和电子设备 |
CN114501082A (zh) * | 2022-02-16 | 2022-05-13 | 上海哔哩哔哩科技有限公司 | 直播间分配方法及装置 |
CN114866799A (zh) * | 2022-05-11 | 2022-08-05 | 北京奇艺世纪科技有限公司 | 一种服务器调度方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101510884A (zh) * | 2009-03-26 | 2009-08-19 | 华为技术有限公司 | 多媒体会议管理方法、网络设备及网络系统 |
CN104852934A (zh) * | 2014-02-13 | 2015-08-19 | 阿里巴巴集团控股有限公司 | 基于前端调度实现流量分配的方法、装置和系统 |
CN107197035A (zh) * | 2017-06-21 | 2017-09-22 | 中国民航大学 | 一种基于一致性哈希算法的亲和性动态负载均衡方法 |
EP3260995A1 (en) * | 2016-06-21 | 2017-12-27 | EntIT Software LLC | Clustering layers in multi-node clusters |
-
2018
- 2018-08-01 CN CN201810860376.8A patent/CN109040232A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101510884A (zh) * | 2009-03-26 | 2009-08-19 | 华为技术有限公司 | 多媒体会议管理方法、网络设备及网络系统 |
CN104852934A (zh) * | 2014-02-13 | 2015-08-19 | 阿里巴巴集团控股有限公司 | 基于前端调度实现流量分配的方法、装置和系统 |
EP3260995A1 (en) * | 2016-06-21 | 2017-12-27 | EntIT Software LLC | Clustering layers in multi-node clusters |
CN107197035A (zh) * | 2017-06-21 | 2017-09-22 | 中国民航大学 | 一种基于一致性哈希算法的亲和性动态负载均衡方法 |
Non-Patent Citations (1)
Title |
---|
窦文华等: "《计算机网络前沿技术》", 30 April 2007, 国防科技大学出版社 * |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111698270A (zh) * | 2019-03-12 | 2020-09-22 | 浙江宇视科技有限公司 | 一种分布式横向扩展协商服务规模的方法及装置 |
CN111698270B (zh) * | 2019-03-12 | 2023-06-20 | 浙江宇视科技有限公司 | 一种分布式横向扩展协商服务规模的方法及装置 |
CN110457128A (zh) * | 2019-07-11 | 2019-11-15 | 阿里巴巴集团控股有限公司 | 任务分配方法、装置和系统 |
CN110457128B (zh) * | 2019-07-11 | 2023-12-22 | 创新先进技术有限公司 | 任务分配方法、装置和系统 |
CN110888735A (zh) * | 2019-11-12 | 2020-03-17 | 厦门网宿有限公司 | 基于一致性哈希的分布式消息分发方法、装置和调度节点 |
CN111966682A (zh) * | 2020-08-14 | 2020-11-20 | 苏州浪潮智能科技有限公司 | 一种白名单防护匹配方法、系统、终端及存储介质 |
CN111966682B (zh) * | 2020-08-14 | 2022-06-14 | 苏州浪潮智能科技有限公司 | 一种白名单防护匹配方法、系统、终端及存储介质 |
CN112202755B (zh) * | 2020-09-25 | 2022-08-23 | 浙江华创视讯科技有限公司 | 一种服务器分配方法、装置、设备及介质 |
CN112202755A (zh) * | 2020-09-25 | 2021-01-08 | 浙江华创视讯科技有限公司 | 一种服务器分配方法、装置、设备及介质 |
CN112423145A (zh) * | 2020-11-16 | 2021-02-26 | 北京达佳互联信息技术有限公司 | 数据处理方法、装置、系统、服务器及介质 |
CN112737968A (zh) * | 2020-12-31 | 2021-04-30 | 北京大米科技有限公司 | 一种流量处理的方法、装置、可读存储介质和电子设备 |
CN114501082B (zh) * | 2022-02-16 | 2023-10-27 | 上海哔哩哔哩科技有限公司 | 直播间分配方法及装置 |
CN114501082A (zh) * | 2022-02-16 | 2022-05-13 | 上海哔哩哔哩科技有限公司 | 直播间分配方法及装置 |
CN114866799A (zh) * | 2022-05-11 | 2022-08-05 | 北京奇艺世纪科技有限公司 | 一种服务器调度方法及装置 |
CN114866799B (zh) * | 2022-05-11 | 2024-04-05 | 北京奇艺世纪科技有限公司 | 一种服务器调度方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109040232A (zh) | 一种视频会议的负载均衡方法、装置、设备及其存储介质 | |
CN110336736B (zh) | 基于mqtt服务器集群实现共享订阅的方法 | |
US8514750B2 (en) | Multiplexed communication for duplex applications | |
US8447881B2 (en) | Load balancing for services | |
US7248593B2 (en) | Method and apparatus for minimizing spinlocks and retaining packet order in systems utilizing multiple transmit queues | |
US7039061B2 (en) | Methods and apparatus for retaining packet order in systems utilizing multiple transmit queues | |
US8392555B2 (en) | Push-back mechanism for pub/sub brokers | |
US20050267980A1 (en) | Regulating client requests in an electronic messaging environment | |
WO2022007406A1 (zh) | 一种基于k8s的服务部署方法、装置、设备、介质 | |
CN103248670A (zh) | 计算机网络环境下的连接管理 | |
CN111049915B (zh) | 一种容器云下消息队列代理系统及方法 | |
US8103759B2 (en) | Message redirection within a messaging infrastructure | |
US11861386B1 (en) | Application gateways in an on-demand network code execution system | |
US8601094B2 (en) | Method and computer program product utilizing multiple UDP data packets to transfer a quantity of data otherwise in excess of a single UDP packet | |
US20090132582A1 (en) | Processor-server hybrid system for processing data | |
US7421700B2 (en) | Interprocess buffer management using a buffer delay time | |
US8819107B2 (en) | Relay apparatus, recording medium storing a relay program, and a relay method | |
US20160006821A1 (en) | Correlation Identity Generation Method For Cloud Environment | |
CN112532534A (zh) | 一种数据传输方法、装置以及计算机可读存储介质 | |
US7774773B2 (en) | Active node, and contents transfer system and method using the active node | |
CN114253747B (zh) | 一种分布式消息管理系统和方法 | |
JPWO2020081224A5 (zh) | ||
US11683269B2 (en) | Data flow processing method, electronic device, and storage medium | |
US20240078144A1 (en) | Process sequencing using meta domain model | |
TW201828093A (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: 20181218 |