企业云服务平台动态扩容方法、装置及系统与流程

文档序号:12278996阅读:215来源:国知局
企业云服务平台动态扩容方法、装置及系统与流程

本发明涉及一种企业云服务平台动态扩容方法、装置及系统。



背景技术:

基于云计算的企业服务平台在为企业用户提供企业服务时,一般会使用云服务器集群,集中处理所有企业的请求。每个企业的数据操作请求,会随机的发送到集群中的一台服务器进行处理。由于云服务平台服务的每个企业存在规模大小、使用时间和方式有差异,当某些企业在某些不定或者特定的时间段具有复杂的计算请求时,则会消耗对应的服务器的运算资源,从而影响同时使用该对应的服务器的其他企业的运算速度。现有技术中,一般采用以下解决方案来解决上述问题:一、购买大量的服务器组成集群,这种方式,会给企业服务平台带来大量的成本,在请求量很低时,会产生大量空闲机器,造成很大的浪费。二、每个企业部署自己的私有云服务器,这种方式,每个企业所能享受的服务器的计算能力降低,虽然自身复杂请求不会影响到他人,是私有云服务器的计算性能与云服务器集群相比,性能大大降低,对复杂请求的处理速度量极大降低。



技术实现要素:

针对上述现有技术的不足,本发明所要解决的技术问题是:提供一种能够以合理数量的服务器维持正常运营的企业云服务平台动态扩容方法、装置及系统。

为解决上述技术问题,本发明采用的一个技术问题是:提供一种企业云服务平台动态扩容方法,包括以下步骤:

S101、获取第一服务器内每一企业用户的每一次操作请求的操作量和/或在持续时间段内的每一企业用户的操作请求的频率;

S103、判断第一服务器内每一企业用户的每一次操作请求的操作量和/或在持续时间段内的每一企业用户的操作请求的频率是否超过预定阈值;

S105、若判断得到第一服务器内企业用户的操作请求的频率和/或每一次操作量超过预定阈值,则将该企业用户的后续操作请求分配至第二服务器内。

进一步的,所述第一服务器及第二服务器均为若干台,若干第一服务器组成第一服务器群集,若干第二服务器组成第二服务器群集。

进一步的,所述第一服务器集群为常用服务器集群,所述第二服务器集群为备用服务器集群。

进一步的:

在S101步骤中,通过存储的每一台第一服务器内每一企业用户的每一操作请求来获取每一台第一服务器内每一企业用户的每一次操作请求的操作量和/或在持续时间段内的每一企业用户的操作请求的频率;

在S103步骤中,判断每一台服务器内每一企业用户的每一次操作请求的操作量和/或在持续时间段内的每一企业用户的操作请求的频率;

在S105步骤中,若判断得到其中一台或多台第一服务器内的一个或多个企业用户的操作请求和/或每一次操作量超过预定阈值,则将该对应的一个或多个企业用户的后续操作请求分配至未超过预定阈值的第二服务器和/或第一服务器内。

进一步的,在S105步骤中,具体包括:

若判断得到其中一台或多台第一服务器内的一个或多个企业用户的操作请求和/或每一次操作量超过预定阈值,则该超过预定阈值的第一服务器将超过阈值信息反馈至反向代理服务器,其中,所述超过阈值信息包括超过预定阈值的企业用户ID;反向代理服务器将对应的一个或多个企业用户的后续操作请求分配至未超过预定阈值的第二服务器和/或第一服务器内。

为解决上述技术问题,本发明采用的另一个技术问题是:提供一种企业云服务平台动态扩容方法,包括以下步骤:

第一服务器获取登录至其上的企业用户的操作请求并存储;

第一服务器根据存储记录获取其内的每一企业用户的每一次操作请求的操作量和/或在持续时间段内的每一企业用户的操作请求的频率;

第一服务器判断其内每一企业用户的每一次操作请求的操作量和/或在持续时间段内的每一企业用户的操作请求的频率是否超过预定阈值;

若第一服务器判断得到其内一个或多个企业用户在所述持续时间段内的操作请求的频率和/或每一次操作量超过预定阈值,则将超过阈值信息反馈至反向代理服务器,以供反向代理服务器将该一个或多个企业用户的后续操作请求分配至第二服务器内。

为解决上述技术问题,本发明采用的又一个技术问题是:提供一种企业云服务平台动态扩容方法,包括以下步骤:

反向代理服务器接收每一企业用户的操作请求;

反向代理服务器将接收到的操作请求随机分配至第一服务器内;

反向代理服务器接收第一服务器反馈的超过阈值信息;

反向代理服务器根据反馈的超过阈值信息,将与该超过阈值信息对应的企业用户的后续操作请求随机分配至第二服务器内。

为解决上述技术问题,本发明采用的又一个技术问题是:提供一种企业云服务平台动态扩容装置,包括:

获取模块,用于获取第一服务器内每一企业用户的每一次操作请求的操作量和/或在持续时间段内的每一企业用户的操作请求的频率;

判断模块,用于判断第一服务器内每一企业用户的每一次操作请求的操作量和/或在持续时间段内的每一企业用户的操作请求的频率是否超过预定阈值;

操作请求分配模块,用于当所述判断模块判断得到第一服务器内企业用户的操作请求和/或每一次操作量超过预定阈值时,将该企业用户的后续操作请求分配至第二服务器内。

为解决上述技术问题,本发明采用的一个技术问题是:提供一种企业云服务平台动态扩容系统,包括:

第一服务器;

第二服务器;

反向代理服务器,用于接收每一企业用户的操作请求,并将操作请求随机分配至所述第一服务器;

所述第一服务器,用于接收反向代理服务器分配的操作请求并进行处理,同时存储该操作请求;还用于判断每一企业用户的每一次操作请求的操作量和/或在持续时间段内的每一企业用户的操作请求的频率是否超过预定阈值,若超过预定阈值,则将该超过阈值信息反馈至反向代理服务器;

所述反向代理服务器还用于根据反馈的超过阈值信息,将该该信息对应的企业用户后续操作请求随机分配至第二服务器。

进一步的,所述第一服务器及第二服务器均为若干台,若干第一服务器组成常用服务器集群,若干第二服务器组成备用服务器集群。

本发明的企业云服务平台动态扩容方法、装置及系统,与现有两种方案相比,具有显著优点。能够以合理数量的服务器集群维持平时运营。当出现复杂请求波动时,能动态的将这部分企业分配到备用服务器集群中,在保证对复杂请求有高性能响应速度的同时,不影响其余企业用户的正常使用。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1 是本发明企业云服务平台动态扩容方法第一实施例的流程图。

图2是本发明企业云服务平台动态扩容方法第一实施例的流程图。

图3是本发明企业云服务平台动态扩容方法第一实施例的流程图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

请参见图1,图1是本发明企业云服务平台动态扩容方法第一实施例的流程图。本实施例中涉及到的第一服务器为若干台,第二服务器为若干台,第二服务器的数量与第一服务器的数量可以不相同。若干台第一服务器组成第一服务器集群,该第一服务器集群为常用服务器集群,则当反向代理服务器分配操作请求时,优先分配至该第一服务器集群,若干台第二服务器组成第二服务器集群为备用服务器集群。第一服务器集群及第二服务器集群下的所有服务器均具有一致的功能。可以理解,的在其他的实施例中,所述第一服务器及第二服务器的数量可以有不同的变化,例如第一服务器及第二服务器均可为一台。

本实施例的企业云服务平台动态扩容方法,包括以下步骤:

S101、获取第一服务器内每一企业用户的每一次操作请求的操作量和/或在持续时间段内的每一企业用户的操作请求的频率;

该持续时间段内的每一企业用户的操作请求,可以是指以某一用户登录周期(例如24小时)内第一次获取到该企业用户的操作请求为持续时间段的起,以预定的持续时间的截止时间为持续时间。例如,在第一次接收到该企业用户的操作请求的起始时间为8:00,预定的持续时间为30分钟,那么,持续时间段则为8:00至8:30。

在本实施例中,获取每一企业用户的每一次操作请求的操作量则不限定持续时间,第一服务器每接收一次企业用户的操作请求时,则获取一次操作量。

操作请求主要包括用户登录和业务操作请求,而在本步骤中获取的操作请求则为业务操作请求(以下简称操作请求)。

在该步骤之前,每一企业用户还需要先进行用户名登录步骤,登录之后企业用户则可进行业务操作请求,以使得该第一服务器集群及第二服务器集群均能够处理登录后的企业用户发送的操作请求。在登录时,先向反向代理服务器发送登录请求,反向代理服务器将登录请求随机分配至任何一个第一服务器内,该第一服务器会下发一个加密串,用户后续的每一个请求都会带上这个加密串,任何一台服务器都能解析来判断登录是否有效。

在企业用户登录时,会为企业用户进行进行身份标识,例如在cookie中写入企业用户的ID。在具体实例中,可以设定登录有效时间,例如设定有效时间为24小时,那么在该24小时内,企业用户可以只登录一次,即可进行后面的操作请求。企业用户每一次登录的身份标识可以不一致,可以临时分配身份标识,只要该企业用户的该次身份标识与登录的其他企业用户的身份标识不一致即可。

每一个企业用户操作请求时,均携带有对应的身份标识,在具体进行操作请求时,所有企业用户的操作请求先发送到反向代理服务器(例如nginx反向代理服务器)上,然后由所述反向代理服务器进行分向代理至实际的业务服务器(即上述第一服务器)。例如有企业用户1、企业用户2、……、企业用户n,那么在它们登录后,该n个企业用户的操作请求均发送至反向代理服务器,然后反向代理服务器将n个企业用户的操作请求进行随机分配至第一服务器(可根据第一服务器的处理状态进行分配)。

本步获取骤中,具体通过存储的每一台第一服务器内每一企业用户的每一操作请求来获取每一台第一服务器在持续时间段内的每一企业用户的操作请求的频率和/或每一次操作量。可以使用数据库、存储模块等来存储所有第一服务器接收到的操作请求的累加次数以及每一次操作量(每一次操作请求所占用的资源),从而能够得到每一个第一服务器处理的每一个企业用户在预定的持续时间内的操作请求的频率和/或每一次操作量。

该获取步骤,可以是第一服务器从存储模块、数据库等中获取与其对应的每一企业用户的操作量和操作请求频率,也可以是另设获取模块进行获取,然后再告知该第一服务器,获取方式具有多元化,并不限于上述获取方式。

本实施例中,需要获取操作请求的频率和每一次操作量,根据操作请求的频率和每一次操作量来动态判断每一台服务器的负载机制。可以理解的,在不同的实施例中,可以仅根据操作频率或者操作量来判断每一台服务器的负载机制。

S103、判断每一台服务器内每一企业用户的每一次操作请求的操作量和/或在持续时间段内的每一企业用户的操作请求的频率是否超过预定阈值;

本实施例中,该判断机制包括:操作量判断、操作请求频率判断、操作量及频率综合判断。

提前设定一高负荷规则的操作请求分配规则:为操作请求频率及每一次操作量分别设定阈值,还可根据该阈值预测当前第一服务器处理该频率的多次请求的时间(即该第一服务器需要高负荷处理该多次操作请求的高负荷时间)、预测当前第一服务器处理该操作量的一次操作请求的时间(即该第一服务器需要高负荷处理该次操作量的高负荷时间),并根据该负荷时间计算该第一服务器的正常恢复时间(即从高负荷恢复正正常负荷的时间),然后反馈超过阈值信息至反向代理服务器,其中,该超过阈值信息中携带有超过设定阈值的企业用户ID,该高负荷的第一服务器正常恢复时间。当反向代理服务器收到该超过阈值信息后,则可将该企业用户的后续操作请求分机分配至其他的未高负荷的第一服务器及备用的第二服务器;当到达正常恢复时间后,反向代理服务器则可以将该企业用户的后续操作请求恢复分配至常用的第一服务器(包括之前的高负荷第一服务器),而第二服务器再次备用。

具体结合实例:

1.操作量判断:

指定事件包含的元素超过设定高负荷阈值n(即操作量超过设定阈值),假设指定事件为群发邮件,第一服务器A单次群发邮件的高负荷阈值为5000封,预测超过该高负荷阈值时,第一服务器需要高负荷处理该次操作量的高负荷时间,具体如下:

企业客户1的一次操作请求为发送群发邮件5000封,将该操作请求分配至第一服务器A,那么该第一服务器A群发企业客户1的5000封邮件时,高负荷时间在当前时间上增加1小时。第一服务器A向反向代理服务器反馈超过阈值信息,该超过阈值信息则包括了第一服务器A处理该5000封邮件的高负荷时间、正常恢复时间以及企业客户1的ID。反向代理服务器在接收到后,若后续企业客户1又发出操作请求,那么反向代理服务器则将后续发送的每一次操作请求随机分配至除该第一服务器A以为的其他第一服务器和/或备用的第二服务器。当第一服务器A恢复正常处理时,反向代理服务器则可根据随机分配规则,分配企业客户的操作请求。

2、操作请求频率判断:

在单位时间n内指定请求的请求量超过m(即持续时间内同一企业客户的操作请求频率超过预定阈值)。

假设第一服务器A在30分钟内能够新建客户资料100个,说明公司在参与展会或者在录入客户,可能随后就是发邮件、操作客户的高峰,设定第一服务器A的高负荷时间为1小时,具体如下:

企业客户1在30分钟内新建客户资料100个,发送100个操作请求至第一服务器A,第一服务器A则向反向代理服务器反馈超过阈值信息,包括了第一服务器A处理该100个客户相关资料的高负荷时间、正常恢复时间以及企业客户1的ID。反向代理服务器的处理同上,此处不再一一赘述。

3.综合判断

操作量大于x,在单位时间y内请求量超过z。

例如企业客户1客户总数超过10万,企业客户1在5分钟内向第一服务器A筛选客户的操作大于10条,可能说明企业客户1公司在进行客户筛选分配,这些操作资源消耗很大,会设定半小时高负载。

高负荷规则:客户总数超过10万,且在5分钟内筛选客户操作大于10条,高负载时间30分钟,第一服务器A则向反向代理服务器发送超过阈值信息,将企业客户1ID、高负荷时间以及正常恢复时间反馈至反向代理服务器,反向代理服务器进行上述类似操作,此处不再一一详述。

可以理解的,上述1、2、3仅仅作为一种实施例来进行解释本发明的思路,在不同的实施例中,并不限于上述1、2、3的操作方式。例如在一些实施例中,只要当前第一服务器判断其内的操作请求频率和操作量中任一个超过预设值时,则发送超过阈值信息至反向代理服务器,所述超过阈值信息还可以仅包括使该当前第一服务器高负荷的企业用户ID。而当前服务器的高负荷时间或正常恢复时间,并不一定采用上述预测的方式,还可以通过现有的任何一种监测、监控、获取方式来判断高负荷的第一服务器是否恢复正常负荷,以使反向代理服务器在后续的操作请求中,确定是否需要发送至此前高负荷的第一服务器上。

S105、若判断得到其中一台或多台第一服务器内的一个或多个企业用户的操作请求和/或每一次操作量超过预定阈值,则将该对应的一个或多个企业用户的后续操作请求分配至未超过预定阈值的第一服务器和/或第二服务器内。

在本步骤中,当判断得到其中一台或多台第一服务器内的一个或多个企业用户的操作请求和/或每一次操作量超过预定阈值,则该超过预定阈值的第一服务器将超过阈值信息反馈至反向代理服务器,其中,所述超过阈值信息包括超过预定阈值的企业用户ID;反向代理服务器将对应的一个或多个企业用户的后续操作请求分配至未超过预定阈值的第一服务器和/或第二服务器内。

本判断步骤可以是每一台第一服务器对自身的每一企业用户的操作频率和/或操作量进行判断,也可以是设置判断模块、流程等来判断每一台服务器内的每一企业用户的操作频率和/或操作量。

本发明实施方式,设置常用服务器集群及备用服务器集群来实现企业云服务平台的动态分配规则,每一台第一服务器实时获取其内的每一企业用户在持续时间段内的操作请求的频率、以及获取其内的每一企业用户的操作量,设定高负荷规则,即当操作频率或操作量到达相应设定阈值时,反馈至反向代理服务器,反馈超过阈值信息时同时将预测的自身负荷恢复时间反馈至反向代理服务器,反向代理服务器获得该超过阈值信息后,将超过阈值的企业用户的后续操作请求动态的随机分配至常用服务器集群和/或备用服务器集群中其他的服务器进行处理。如此,能够以合理数量的服务器集群维持平时运营。当出现复杂请求波动时,能动态的将这部分企业转移到服务器集群中其他的服务器中,在保证对复杂请求有高性能响应速度的同时,不影响其余企业用户的正常使用。

请参见图2,图2是本发明企业云服务平台动态扩容方法第一实施例的流程图。本实施例的企业云服务平台同样包括与第一实施例结构或功能相同或相似的若干第一服务器及若干第二服务器,若干第一服务器组成常用服务器集群,若干第二服务器组成备用服务器集群。本实施例的企业云服务平台动态扩容方法,包括以下步骤:

S201、第一服务器获取登录至其上的企业用户的操作请求并存储;

所述企业云服务平台服务于若干企业,例如企业邮件、企业客户管理的处理等业务。由于每一个企业用户的规模大小不一,因此每个企业用户对应的客户群数量、规模有差异。一些客户数量较多的企业用户在处理邮件群发、客户资源管理(例如新建客户档案、客户邮件群发)时,较多客户数量的企业用户在单次邮件群发时,其操作量较大可能使第一服务器产生高负荷,那么该服务器若再继续处理该企业用户的处理时,则使得该服务器上的其他企业用户的处理变慢,为其他企业用户带来不便以及不好的体验感和满意度。

每一个企业用户需要利用本云服务平台处理业务时,需要先登录至常用服务器上,登录后即可进行相应的业务操作请求,此过程均通过反向服务器进行分配,当分配到第一服务器上时,第一服务器存储该企业用户的操作次数和操作量。

优选的,每一台服务器均将其内的每一个企业用户的操作请求次数、每一次操作量存储至共用的存储模块或数据库中,这样能够更透明化的获取到每一个第一服务器内的有关操作请求的信息。

S203、第一服务器根据存储记录获取其内的每一企业用户的每一次操作请求的操作量和/或在持续时间段内的每一企业用户的操作请求的频率;

在获取时,具体通过存储的每一台第一服务器内每一企业用户的每一操作请求来获取每一台第一服务器在持续时间段内的每一企业用户的操作请求的频率和/或每一次操作量。

S205、第一服务器判断其内每一企业用户的每一次操作请求的操作量和/或在持续时间段内的每一企业用户的操作请求的频率是否超过预定阈值;

S207、若第一服务器判断得到其内一个或多个企业用户在所述持续时间段内的操作请求的频率和/或每一次操作量超过预定阈值,则将超过阈值信息反馈至反向代理服务器,以供反向代理服务器将该一个或多个企业用户的后续操作请求分配至第二服务器内。

在该步骤中,当判断得到其内的某一企业用户或多个企业用户的操作量和/或操作请求的频率超过预定阈值,该第一服务器则预测其处理该次操作量和/或该若干次操作请求需要高负荷的高负荷时间,然后将带有高负荷处理时间、恢复时间、超过预定阈值的企业用户ID发送至反向代理服务器,反向代理服务器接收到超过阈值信息后,在该高负荷时间内不再向上述高负荷的第一服务器发送该企业用户的后续操作请求,转而向常用服务器集群内的其他第一服务器和/或备用服务器集群随机分配该企业用户的后续操作请求。

上述动态分配机制与第一实施例相同或相似,此处便不再一一赘述。本发明实施方式,利用存储模块存储所有第一服务器内的每一企业用户的操作请求次数、每一次操作请求时间、每一次操作量,每一台第一服务器只需要直接调用即可得到其内所有用户的操作请求的频率和每一次操作量,从而得到自身是否高负荷,建立高负荷机制,将超阈值信息发送至反向代理服务器,以供反向代理服务器将该一个或多个企业用户的后续操作请求分配至其他的第一服务器和/或第二服务器内。

请参见图3,图3是本发明云服务平台动态扩容方法的第三实施例的流程图。本实施例以反向代理服务器为视角详细阐述动态分配扩容方法。该方法包括以下步骤:

S301、反向代理服务器接收每一企业用户的操作请求;

S303、反向代理服务器将接收到的操作请求随机分配至第一服务器内;

S305、反向代理服务器接收第一服务器反馈的超过阈值信息;

S307、反向代理服务器根据反馈的超过阈值信息,将与该超过阈值信息对应的企业用户的后续操作请求随机分配至第二服务器内。

本发明实施方式,反向代理服务器根据超过阈值信息即可得知常用服务器集群中的高负荷的第一服务器,从而将后续的企业用户的操作请求分配至正常负荷的第一服务器或者分配至备用服务器中,采用这种动态分配机制,不必像传统技术那边购置足够多的服务器,利用合理数量的服务器即可实现动态扩容,为每一企业客户提供优质的业务同时能够降低成本。

本发明还公开了一种企业云服务平台动态扩容装置,包括:

获取模块,用于获取第一服务器在持续时间段内的每一企业用户的操作请求的频率和/或每一次操作量;

判断模块,用于判断第一服务器内每一企业用户的每一次操作请求的操作量和/或在持续时间段内的每一企业用户的操作请求的频率是否超过预定阈值;

操作请求分配模块,用于当所述判断模块判断得到第一服务器内企业用户的操作请求和/或每一次操作量超过预定阈值时,将该企业用户的后续操作请求分配至第二服务器内。

本实施例的获取模块、判断模块以及操作请求分配模块的具体方法见上述方法实施例,此处不再一一赘述

本发明还公开了一种企业云服务平台动态扩容系统,包括:

第一服务器;

第二服务器;

反向代理服务器,用于接收每一企业用户的操作请求,并将操作请求随机分配至所述第一服务器;

所述第一服务器,用于接收反向代理服务器分配的操作请求并进行处理,同时存储该操作请求;还用于判断一持续时间段内的同一企业用户的操作请求的频率和/或每一次操作量是否超过预定阈值,若超过预定阈值,则将该超过阈值信息反馈至反向代理服务器;

所述反向代理服务器还用于根据反馈的超过阈值信息,将该该信息对应的企业用户后续操作请求随机分配至第二服务器。

所述第一服务器及第二服务器均为若干台,若干第一服务器组成常用服务器集群,若干第二服务器组成备用服务器集群。

本发明实施方式,与传统的两种方案相比,具有显著优点。能够以合理数量的服务器集群维持平时运营。当出现复杂请求波动时,能动态的将这部分企业分配到备用服务器集群中,在保证对复杂请求有高性能响应速度的同时,不影响其余企业用户的正常使用。提高企业用户的满意度、体验度,同时节约了服务器购买成本。

以上仅为本发明的实施方式,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1