具体实施方式
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
图1所示为根据本发明第一较佳实施例提供的会议漂移方法的流程图。如图1所示,本发明第一较佳实施例提供的会议漂移方法包括步骤101~104。
于步骤101,域名解析服务器接收并解析用户发送的网络会议请求中携带的会议参数信息,确定网络会议的类型及所述用户所属的区域,并根据会议负载阈值表判断所述区域内所述会议类型的当前会议数目是否超过对应的最大会议数阈值。于此,会议参数信息包括会议人数、与会人员区域信息及地址信息。其中,与会人员区域信息指参加会议的人员分布的区域信息。
具体而言,用户发起网络会议时,设定网络会议的会议人数、与会人区域信息后,将网络会议请求发送至域名解析服务器。域名解析服务器接收网络会议请求后,通过解析网络会议请求中携带的会议参数信息获得用户的地址信息(例如,IP地址)以确定所述用户所属的区域。举例而言,若IP地址为202.91.251.148的用户P发起网络会议,则域名解析服务器通过解析用户P发送的网络会议请求可得到IP地址为202.91.251.148,并得到上述IP地址对应的区域为苏州。
于本实施例中,域名解析服务器解析网络会议请求中携带的会议参数信息,确定会议类型。于此,会议类型例如包括一般会议、本区域大型会议以及跨区域大型会议。会议类型的区分标准例如表1所示。然而,本发明对此并不限定。于实际应用中,可根据需要设定会议类型的种类及区分标准。
表1
举例而言,若用户P发送的网络会议请求中携带的会议参数信息包括会议人数200人,与会人区域信息为苏州及杭州,则域名解析服务器根据上述信息参照表1可知,该网络会议属于一般会议。
于本实施例中,域名解析服务器存储会议负载阈值表,会议负载阈值表包括所有区域内不同会议类型对应的最大会议数阈值及当前会议数目。其中,会议负载阈值表中的每个区域不同会议类型对应的最大会议数阈值可根据实际情况确定。本发明对此并不限定。
以杭州、北京、苏州三个区域为例,域名解析服务器存储的会议负载阈值表例如表2所示。
表2
于本实施例中,域名解析服务器根据接收的网络会议请求实时更新会议负载阈值表中的当前会议数目。若域名解析服务器判断得到相应区域内相应会议类型的当前会议数目未超过对应的最大会议数阈值,则域名解析服务器将网络会议请求发送至与所述区域对应的区域控制服务器,所述区域控制服务器将所述网络会议请求发送至与所述会议类型对应的负载均衡服务器。负载均衡服务器接收网络会议请求后,将所述网络会议请求发送至相应的业务处理服务器,所述业务处理服务器处理所述网络会议请求。举例而言,若该网络会议请求是“用户a向用户b发送文本消息”,业务处理服务器接收到该请求后,首先向分布式缓存服务器查询用户b在哪个业务处理服务器上,然后再向用户b所在的业务处理服务器发送请求,请求该业务处理服务器转发文本消息给用户b。于此,所有业务处理服务器中的信息均可同步至分布式缓存服务器。业务处理服务器通过分布式缓存服务器实现跨区域的信息交互。如此,提高了通信效率。
于步骤102,若超过,所述域名解析服务器根据第一漂移策略确定所述网络会议请求对应的目标区域的区域控制服务器。其中,第一漂移策略为:根据区域优先级、各个区域的会议总场次及各个区域的会议总人数确定所述网络会议请求对应的目标区域的区域控制服务器。具体而言,根据区域优先级、各个区域的会议总场次及各个区域的会议总人数确定每个区域的比较参数,选择比较参数最小的区域控制服务器。其中,每个区域的比较参数获取方式为:比较参数=区域优先级×该区域的会议总场次+区域优先级×该区域的会议总人数。于此,域名解析服务器存储不同区域的区域优先级,并查询获得各个区域的会议总场次以及会议总人数。
接着,以北京、杭州、苏州及上海四个区域为例。于此,每个区域对应一个区域控制服务器。若杭州区域的用户T1发送网络会议请求Y,会议参数信息如下:会议人数1200人,用户T1的地址信息(例如,IP地址117.81.233.120),与会人员区域信息包括用户T2的地址信息(例如,IP地址117.81.233.121)及用户T3的地址信息(例如,IP地址117.81.233.122),则域名解析服务器解析用户T1的网络会议请求Y后,根据用户T1的IP地址确定用户T1属于杭州区域。另外,根据表1确定所述网络会议为本区域大型会议。此外,参照表2所示的会议负载阈值表,若加上此场会议超过杭州区域的本区域大型会议对应的最大会议数阈值(例如,400场),此时,该网络会议请求Y需要转发至其他的区域控制服务器。于此,域名解析服务器根据第一漂移策略确定该网络会议需漂移至其他哪个区域。例如,域名解析服务器获取的北京、上海、苏州三个区域的优先级、会议总场次及会议总人数信息如表3所述。其中,区域优先级由优先级参数体现,会议总场次及会议总人数为每个区域的当前信息。
区域 |
优先级参数 |
会议总场次 |
会议总人数 |
比较参数 |
北京 |
0.95 |
670 |
10432 |
0.95×670+0.95×10432=10546.9 |
上海 |
0.9 |
795 |
13648 |
0.9×795+0.9×13648=12998.7 |
苏州 |
0.85 |
918 |
14688 |
0.85×918+0.85×14688=13265.1 |
表3
由表3可知,北京区域的比较参数最小,因此,域名解析服务器确定的目标区域为北京区域,即确定将该网络会议请求漂移至北京的区域控制服务器。
于本实施例中,域名解析服务器根据第一漂移策略建立第一例外路由规则表,第一例外路由规则表包括所述网络会议请求中所有与会人员的地址信息与根据所述第一漂移策略确定的区域控制服务器参数信息的对应关系。于本步骤所述例子中,域名解析服务器建立的第一例外路由规则表例如表4所示。
例外IP地址 |
北京的区域控制服务器的IP地址 |
117.81.233.120 |
202.91.251.133 |
117.81.233.121 |
202.91.251.133 |
117.81.233.122 |
202.91.251.133 |
表4
于本实施例中,根据表4可知,当用户T1~T3登录网络会议时,域名解析服务器会将用户T1~T3的请求转发到北京的区域控制服务器上。此外,当该场会议结束时,北京的区域控制服务器再发送消息给域名解析服务器,请求域名解析服务器删除添加的例外规则。
此外,于本实施例中,当域名解析服务器中存在例外路由规则表时,域名解析服务器在接收到用户的请求后,先检查用户的地址信息是否存在于例外路由规则表中。若例外路由规则表中存在所述用户的地址信息,则将该用户的请求发送至根据例外路由规则表确定的区域控制服务器上,若例外路由规则表中不存在所述用户的地址信息,则将该用户的请求发送至该用户对应区域的区域控制服务器。
于步骤103,若所述目标区域内所述会议类型的当前会议数目大于或等于对应的最大会议数阈值时,所述区域控制服务器确定需要漂移的目标网络会议,且处理所述目标网络会议的业务处理服务器根据第二漂移策略漂移所述目标网络会议。
仍以步骤102中的例子说明,由步骤102可知,杭州区域的网络会议请求Y需要漂移至北京的区域控制服务器。而且,网络会议请求Y的会议类型为本区域大型会议,此时,北京的区域控制服务器判断北京区域内的本区域大型会议的当前会议数目是否超过对应的最大会议数阈值。于此,北京的区域控制服务器可查询域名解析服务器内的会议负载阈值表获知北京区域的本区域大型会议的最大会议数阈值(例如,由表2可知,为700场)。另外,北京的区域控制服务器可通过本区域大型会议对应的负载均衡服务器查询得到处理本区域大型会议的业务处理服务器的具体信息(例如,业务处理服务器的IP地址及每个业务处理服务器的当前会议处理数目)。根据上述信息,北京的区域控制服务器判断本区域大型会议的当前会议数目是否超过对应的最大会议数阈值。若未超过,则北京区域的本区域大型会议对应的负载均衡服务器根据分配策略将网络会议请求Y分配给相应的业务处理服务器。其中,分配策略包括:选择CPU空闲率最高的业务处理服务器,或者,选择优先级最高的业务处理服务器。若超过,北京的区域控制服务器确定需要漂移的目标网络会议。于此,需要漂移的目标网络会议的数目=当前会议总数-对应的最大会议数阈值+1。举例而言,若北京区域的本区域大型会议的当前总会议数目为800场,对应的最大会议数阈值为700场,则当前需要漂移的目标网络会议的数目为101场。
于本实施例中,区域控制服务器确定的目标网络会议选择之前漂移过来的网络会议,并按照漂移进入时间由先至后的顺序选择目标网络会议。于此,目标区域的区域控制服务器确定需要漂移的目标网络会议,并通过对应的负载均衡服务器查询处理目标网络会议的业务处理服务器的参数信息,并根据所述参数信息通知所述业务处理服务器漂移所述目标网络会议。而且,处理目标网络会议的业务处理服务器根据第二漂移策略漂移目标网络会议。其中,业务处理服务器的参数信息例如包括业务处理服务器的IP地址信息。
于一较佳实施例中,第二漂移策略为:处理目标网络会议的业务处理服务器根据会议类型的优先级确定目标负载均衡服务器,并将目标网络会议请求路由至目标负载均衡服务器,目标负载均衡服务器根据分配策略将目标网络会议请求路由至目标业务处理服务器。具体而言,每个业务处理服务器均保存对应区域内所有负载均衡服务器的参数信息。其中,负载均衡服务器的参数信息例如包括负载均衡服务器的IP地址信息。其中,每个负载均衡服务器对应一个会议类型。而且,业务处理服务器存储相应的迁移策略对照表,例如表5所示。
会议类型 |
会议类型优先级 |
迁移策略 |
跨区域大型会议 |
高 |
迁移至本区域大型会议对应的负载均衡服务器 |
本区域大型会议 |
中 |
迁移至一般会议对应的负载均衡服务器 |
一般会议 |
低 |
不迁移 |
表5
参照表5,以三种会议类型为例,会议类型的优先级由高至低依次为:跨区域大型会议、本区域大型会议、一般会议。于此,若处理目标网络会议的业务处理服务器接收区域控制服务器的漂移通知后,业务处理服务器会将目标网络会议请求根据表5所示的迁移策略进行迁移。例如,目标网络会议请求属于本区域大型会议,则业务处理服务器确定将该网络会议请求路由至一般会议对应的负载均衡服务器。
于此,仍以步骤102中杭州区域用户发送的网络会议请求Y为例。根据步骤102及103,北京的区域控制服务器例如确定目标网络会议请求P需要漂移,北京的区域控制服务器查询获知业务处理服务器B处理该网络会议请求P后,通知业务处理服务器B漂移网络会议请求P。此时,由于本区域大型会议的优先级高于一般会议的优先级,参照表5,业务处理服务器B确定将该网络会议请求P路由至北京区域的一般会议对应的负载均衡服务器。具体而言,业务处理服务器B将该网络会议下所有人的Socket连接路由到北京区域的一般会议对应的负载均衡服务器,北京区域的一般会议对应的负载均衡服务器接收到这些连接后,将这些连接根据分配策略负载到对应的业务处理服务器上。另外,北京的区域控制服务器为网络会议请求P建立第二例外路由规则表。于此,第二例外路由规则表包括网络会议请求P中所有与会人员的地址信息与北京区域一般会议对应的负载均衡服务器参数信息的对应关系。
于另一较佳实施例,第二漂移策略为:处理目标网络会议的业务处理服务器通过与所述会议类型对应的负载均衡服务器,向所属的区域控制服务器发送会议漂移请求,区域控制服务器根据会议漂移请求及会议类型的优先级,确定目标负载均衡服务器,并通过与所述会议类型对应的负载均衡服务器,将目标负载均衡服务器的地址信息发送至所述业务处理服务器,所述业务处理服务器根据所述地址信息,将所述网络会议请求路由至所述目标负载均衡服务器,所述目标负载均衡服务器根据所述分配策略将所述网络会议请求路由至目标业务处理服务器。
于此,仍以步骤102中杭州区域用户发送的网络会议请求Y为例。北京的区域控制服务器例如确定目标网络会议请求P需要漂移,北京的区域控制服务器查询获知业务处理服务器B处理该网络会议请求P后,通知业务处理服务器B漂移网络会议请求P。此时,业务处理服务器B通过与本区域大型会议对应的负载均衡服务器,向北京区域的区域控制服务器发送会议漂移请求。北京区域的区域控制服务器根据所述会议漂移请求及会议类型的优先级,确定目标负载均衡服务器。具体而言,北京区域的区域控制服务器存储例如表5所示的迁移策略对照表。于此,北京区域的区域控制服务器确定目标负载均衡服务器为对应一般会议的负载均衡服务器。北京区域的区域控制服务器通过本区域大型会议对应的负载均衡服务器,将一般会议对应的负载均衡服务器的地址信息发送至业务处理服务器B。业务处理服务器B根据所述地址信息,将网络会议请求P路由至一般会议对应的负载均衡服务器,一般会议对应的负载均衡服务器根据分配策略将网络会议请求P路由至目标业务处理服务器。其中,分配策略包括:选择CPU空闲率最高的业务处理服务器,或者,选择优先级最高的业务处理服务器。此外,于本较佳实施例中的其他处理过程如上一较佳实施例所述。故于此不再赘述。
于步骤104,所述目标区域内对应所述会议类型的负载均衡服务器根据分配策略将所述网络会议请求路由至处理所述目标网络会议的业务处理服务器。具体而言,在目标区域内,处理目标网络会议的业务处理服务器将目标网络会议进行漂移后,目标区域内对应相应会议类型的负载均衡服务器根据分配策略将网络会议请求路由至处理所述目标网络会议的业务处理服务器。
仍以步骤102中杭州区域用户发送的网络会议请求Y为例。根据步骤102及103可知,于业务处理服务器B将网络会议请求P漂移后,北京区域内本区域大型会议对应的负载均衡服务器根据分配策略将网络会议请求Y路由至处理所述目标网络会议的业务处理服务器。于此,处理所述目标网络会议的业务处理服务器为业务处理服务器B。然而,于存在多个目标网络会议请求漂移的情况下,负载均衡服务器根据分配策略确定选择哪个处理目标网络会议的业务处理服务器。其中,分配策略包括:选择CPU空闲率最高的处理目标网络会议的业务处理服务器进行分配,或者,选择优先级最高的处理目标网络会议的业务处理服务器进行分配。然而,本发明对此并不限定。于此,北京的区域控制服务器为网络会议请求Y建立第二例外路由规则表,例如表6所示。
例外IP地址 |
北京区域本区域大型会议对应的负载均衡服务器的IP地址 |
117.81.233.120 |
202.91.251.133 |
117.81.233.121 |
202.91.251.133 |
117.81.233.122 |
202.91.251.133 |
表6
于本实施例中,当网络会议请求Y的用户登录网络会议时,域名解析服务器根据表4会将该些用户的请求转发到北京的区域控制服务器上,北京的区域控制服务器根据表6会将该些用户的请求转发至北京区域的本区域大型会议对应的负载均衡服务器,该负载均衡服务器再将该些请求路由至处理目标网络会议的业务处理服务器。如此,实现单场会议的漂移。此外,当该场会议结束时,处理目标网络会议的业务处理服务器通过对应的负载均衡服务器发送消息给北京区域的区域控制服务器,请求北京区域的区域控制服务器删除添加的例外规则。
此外,于本实施例中,当区域控制服务器中存在例外路由规则表时,区域控制服务器在接收到用户的请求后,先检查用户的地址信息是否存在于例外路由规则表中。若例外路由规则表中存在所述用户的地址信息,则将该用户的请求发送至根据例外路由规则表确定的负载均衡服务器上,若例外路由规则表中不存在所述用户的地址信息,则将该用户的请求发送至该用户所属网络会议的会议类型对应的负载均衡服务器。
图2所示为根据本发明第一较佳实施例提供的会议漂移系统的示意图。如图2所示,本发明第一较佳实施例提供的会议漂移系统包括域名解析服务器20、区域控制服务器21a~21c、负载均衡服务器22a~22c,23a~23c,24a~24c、业务处理服务器a1~a3、b1~b3、c1~c3、d1~d3、e1~e3、f1~f3、g1~g3、h1~h3、k1~k3以及分布式缓存服务器30。于此,以三个区域控制服务器为例进行说明。域名解析服务器20连接区域控制服务器21a~21c,每个区域控制服务器对应连接三个负载均衡服务器,每个负载均衡服务器对应连接三个业务处理服务器。分布式缓存服务器30连接业务处理服务器。然而,本发明并不限定区域控制服务器、负载均衡服务器以及业务处理服务器的数目。
于本实施例中,域名解析服务器20,用于接收并解析用户发送的网络会议请求中携带的会议参数信息,确定网络会议的类型及所述用户所属的区域,并根据会议负载阈值表判断所述区域内所述会议类型的当前会议数目是否超过对应的最大会议数阈值。若超过,域名解析服务器20,用于根据第一漂移策略确定所述网络会议请求对应的目标区域的区域控制服务器(例如,区域控制服务器21a)。若目标区域内所述会议类型的当前会议数目大于或等于对应的最大会议数阈值时,区域控制服务器21a,用于确定需要漂移的目标网络会议,且处理所述目标网络会议的业务处理服务器(例如,业务处理服务器a2)根据第二漂移策略漂移所述目标网络会议。目标区域内对应所述会议类型的负载均衡服务器(例如,负载均衡服务器22a),用于根据分配策略将网络会议请求路由至处理目标网络会议的业务处理服务器。关于区域控制服务器21b及21c有相同的处理过程,故于此不再赘述。此外,关于上述系统的具体操作过程同上述方法所述,故于此不再赘述。
图3所示为根据本发明第二较佳实施例提供的会议漂移方法的流程图。如图3所示,本发明第二较佳实施例提供的会议漂移方法包括步骤301~304。于步骤301,域名解析服务器接收并解析用户发送的网络会议请求中携带的会议参数信息,确定网络会议的类型及所述用户所属的区域,并根据会议负载阈值表判断所述区域内所述会议类型的当前会议数目是否超过对应的最大会议数阈值,。于步骤302,若超过,所述域名解析服务器根据第一漂移策略确定所述网络会议请求对应的目标区域的区域控制服务器,且所述区域控制服务器根据预设策略确定需要漂移网络会议的业务处理服务器。于步骤303,若需要漂移网络会议的业务处理服务器处理的当前会议数目大于或等于预警值时,所述业务处理服务器确定需要漂移的目标网络会议,并根据第二漂移策略漂移所述目标网络会议。于步骤304,所述目标区域内对应所述会议类型的负载均衡服务器将所述网络会议请求路由至需要漂移网络会议的所述业务处理服务器。
第二较佳实施例提供的会议漂移方法与第一较佳实施例提供的会议漂移方法的区别在于:第二较佳实施例中,于步骤302,所述区域控制服务器根据预设策略确定需要漂移网络会议的目标业务处理服务器,于步骤303,若需要漂移网络会议的所述业务处理服务器处理的当前会议数目大于或等于预警值时,所述业务处理服务器确定需要漂移的目标网络会议,并根据第二漂移策略漂移所述目标网络会议。
具体而言,域名解析服务器根据第一漂移策略确定网络会议请求对应的目标区域的区域控制服务器后,目标区域的区域控制服务器根据预设策略确定需要漂移网络会议的业务处理服务器。其中,预设策略为:选择空闲率高的业务处理服务器作为需要漂移网络会议的业务处理服务器,或者,选择当前处理漂移过来的网络会议的业务处理服务器作为需要漂移网络会议的业务处理服务器。
于此,若预设策略为:选择空闲率高的业务处理服务器作为需要漂移网络会议的业务处理服务器,则需要漂移网络会议的业务处理服务器选择之前漂移过来的网络会议作为目标网络会议,而且所述业务处理服务器按照漂移进入时间由先至后的顺序选择目标网络会议。
若预设策略为:选择空闲率高的业务处理服务器作为需要漂移网络会议的业务处理服务器,且确定的需要漂移网络会议的业务处理服务器当前不存在漂移过来的网络会议,则需要漂移网络会议的业务处理服务器按照当前处理的网络会议的发起时间由先至后的顺序选择目标网络会议,或者按照当前处理的网络会议的会议时长的长短选择目标网络会议。本发明对此并不限定于此。
此外,若预设策略为:选择当前处理漂移过来的网络会议的业务处理服务器作为需要漂移网络会议的业务处理服务器。若仅有一个业务处理服务器当前处理漂移过来的网络会议,则该业务处理服务器确定的目标网络会议为漂移过来的网络会议。若有多个业务处理服务器当前均在处理漂移过来的网络会议时,则根据该些业务处理服务器的空闲率选择空闲率最高的业务处理服务器作为需要漂移网络会议的业务处理服务器,并选择漂移过来的网络会议作为目标网络会议。
于第二较佳实施例中,第二漂移策略为:需要漂移网络会议的所述业务处理服务器根据会议类型的优先级确定目标负载均衡服务器并将目标网络会议请求路由至所述目标负载均衡服务器,所述目标负载均衡服务器根据所述分配策略将目标网络会议请求路由至目标业务处理服务器。或者,第二漂移策略为:需要漂移网络会议的的所述业务处理服务器通过与所述会议类型对应的负载均衡服务器,向所属的区域控制服务器发送会议漂移请求,所述区域控制服务器根据所述会议漂移请求及会议类型的优先级,确定目标负载均衡服务器,并通过与所述会议类型对应的负载均衡服务器,将所述目标负载均衡服务器的地址信息发送至所述业务处理服务器,所述业务处理服务器根据所述地址信息,将目标网络会议请求路由至所述目标负载均衡服务器,所述目标负载均衡服务器根据所述分配策略将目标网络会议请求路由至目标业务处理服务器。关于第二较佳实施例中网络会议请求的具体漂移过程同第一较佳实施例所述,故于此不再赘述。
本发明第二较佳实施例还提供一种会议漂移系统,包括域名解析服务器、区域控制服务器、负载均衡服务器以及业务处理服务器。域名解析服务器连接区域控制服务器,区域控制服务器连接负载均衡服务器,负载均衡服务器连接业务处理服务器。域名解析服务器,用于接收并解析用户发送的网络会议请求中携带的会议参数信息,确定网络会议的类型及所述用户所属的区域,并根据会议负载阈值表判断所述区域内所述会议类型的当前会议数目是否超过对应的最大会议数阈值。若超过,域名解析服务器,用于根据第一漂移策略确定网络会议请求对应的目标区域的区域控制服务器,且区域控制服务器,用于根据预设策略确定需要漂移网络会议的业务处理服务器。若需要漂移网络会议的业务处理服务器处理的当前会议数目大于或等于预警值时,业务处理服务器,用于确定需要漂移的目标网络会议,并根据第二漂移策略漂移所述目标网络会议。目标区域内对应所述会议类型的负载均衡服务器,用于将网络会议请求路由至需要漂移网络会议的所述业务处理服务器。
综上所述,根据本发明较佳实施例提供的会议漂移方法及系统,于域名解析服务器根据会议负载阈值表判断相应区域内相应会议类型的当前会议数目超过对应的最大会议数阈值时,域名解析服务器根据第一漂移策略确定网络会议请求对应的目标区域的区域控制服务器。若目标区域内相应会议类型的当前会议数目大于或等于对应的最大会议数阈值时,目标区域控制服务器确定需要漂移的目标网络会议,且处理目标网络会议的业务处理服务器根据第二漂移策略漂移目标网络会议。或者,目标区域控制服务器根据预设策略确定需要漂移网络会议的业务处理服务器,若需要漂移网络会议的业务处理服务器处理的当前会议数目大于或等于预警值时,需要漂移网络会议的业务处理服务器确定需要漂移的目标网络会议,并根据第二漂移策略漂移目标网络会议。如此,对超过对应最大会议数阈值的网络会议实现漂移,同时,在目标区域相应会议类型的当前会议数目超过最大会议数阈值或预警值时,漂移目标网络会议,从而实现单场会议的漂移,使得服务器集群负载更均衡,提高通信效率。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。