一种启动服务集群的方法及服务集群技术

技术编号:13620738 阅读:92 留言:0更新日期:2016-08-31 13:18
本申请提供了一种启动服务集群的方法及服务集群,服务集群至少包括:多个子程序服务集群,每个子程序服务集群包括至少一个服务节点,方法包括:在接收到用户的服务请求时,确定完成用户的服务请求的目标子程序服务集群;获取目标子程序服务集群的当前状态,目标子程序服务集群的当前状态包括目标子程序服务集群中当前启动的服务节点的数量;当目标子程序服务集群当前没有启动的服务节点时,启动目标子程序服务集群。本申请不用预先将整个服务集群启动,而是根据具体的访问需求对服务集群中的子程序服务集群进行启动,即整个服务集群的架构是可调整,这使得服务集群节点的利用率大大提高,服务集群的功耗大大降低。

【技术实现步骤摘要】

本专利技术涉及互联网及云计算
,尤其涉及一种启动服务集群的方法及服务集群
技术介绍
随着互联网和云计算技术的不断发展,越来越多的服务需要使用集群服务来更好的满足用户的需求。一方面,服务集群化使用户可以得到更好的用户体验,例如访问速度快,同时,服务集群化可以在同一时间为更多的用户提供服务;另一方面,服务集群化可以提高系统的可用性,减少系统故障对业务造成的危害。然而,现实应用中往往会存在如下场景:在很多情况下,用户的访问会在特定的时间段内有大量的请求,而在部分时间段内基本没有请求或者只有少数请求。为了保证系统可以在访问量峰值时保持高可用,后台服务的集群需要一直保持运行。对于一个大型的应用服务而言,一方面,持续维护一系列的集群服务不仅加大了运维工作的难度,还极大的降低了服务器的利用率,另一方面,在服务集群启动时,各个服务所占的系统资源的比例,集群中节点数量都是之前已经确定好的,一旦服务启动集群的架构固定,在服务运行状态下,根据具体的访问需求对服务集群进行动态调整是比较困难的。
技术实现思路
有鉴于此,本专利技术提供了一种启动服务集群的方法及服务集群,用于解决现有技术中服务集群运维难度大、服务器利用率较低以及服务集群无法动态调整的问题,其技术方案如下:一种启动服务集群的方法,所述服务集群包括:多个子程序服务集群,每个子程序服务集群包括至少一个服务节点,所述方法包括:在接收到用户的服务请求时,确定完成所述用户的服务请求的目标子程序服务集群,所述目标子程序服务集群为所述服务集群中的至少一个子程序服务集群;获取所述目标子程序服务集群的当前状态,所述目标子程序服务集群的当前状态包括所述目标子程序服务集群中当前启动的服务节点的数量;当所述目标子程序服务集群当前没有启动的服务节点时,启动所述目标子程序服务集群。其中,每个所述子程序服务集群对应一容器且设置于所述容器中;则所述在接收到用户的服务请求时,确定完成所述用户的服务请求的目标子程序服务集群,包括:在接收到所述用户的服务请求时,从多个容器中确定目标容器;将所述目标容器中的子程序服务集群确定为完成所述服务请求的目标子程序服务集群;则当所述目标子程序服务集群当前没有启动的服务节点时,启动所述目标子程序服务集群具体为:通过启动所述目标容器以使所述标子程序服务集群启动。当所述目标子程序服务集群当前没有启动的服务节点时,启动所述目标子程序服务集群,包括:当所述目标子程序服务集群当前没有启动的服务节点时,依据当前用户的服务请求的数量确定所述目标子程序服务集群中需要启动的服务节点的数量并启动。优选地,所述方法还包括:当所述目标子程序服务集群有已启动的服务节点时,依据当前用户的服务请求的数量以及所述目标子程序服务集群中已启动的服务节点的数量确定是否需要启动新的服务节点;当需要启动所述新的服务节点时,启动所述新的服务节点以使当前已启动的服务节点的服务能力满足所述用户的服务请求。优选地,所述方法还包括:在所述目标程序服务集群完成所有的所述用户的服务请求之后,如果在预设时间段内未接收到用户针对所述目标程序服务集群的新的服务请求,则关闭所述目标程序服务集群。优选地,所述方法还包括:当所述目标子程序服务集群中启动的服务节点的数量多于当前用户请求的服务所需的服务节点的数量时,关闭所述目标子程序服务集群中的至少一个服务节点。优选地,所述方法还包括:在接收到所述用户的服务请求之前,预先启动所述目标程序服务集群中的部分服务节点。一种服务集群,所述服务集群包括:控制单元和多个子程序服务集群,每个子程序服务集群包括至少一个服务节点,所述控制单元,用于在接收到用户的服务请求时,确定完成所述用户的服务请求的目标子程序服务集群,并获取所述目标子程序服务集群的当前状态,在所述目标子程序服务集群当前没有启动的服务节点时,向所述目标子程序服务集群发送启动指令;所述目标子程序服务集群,用于在接收到所述启动指令时进行启动。其中,每个所述子程序服务集群对应一容器且设置于所述容器中;所述控制单元,具体用于在接收到所述用户的服务请求时,通过所述服务请求确定目标容器,并将向所述目标容器发送所述启动指令,以使所述目标容器在接收到所述启动指令时启动所述目标子程序服务集群。其中,所述控制单元,具体用于当所述目标子程序服务集群当前没有启动的服务节点时,依据当前用户的服务请求的数量确定所述目标子程序服务集群中需要启动的服务节点,并向所述需要启动的服务节点发送启动指令,以使所述需要启动的服务节点启动。优选地,所述控制单元,还用于当所述目标子程序服务集群有已启动的服务节点时,依据当前用户的服务请求的数量以及所述目标子程序服务集群中已启动的服务节点的数量确定是否需要启动新的服务节点,当需要启动所述新的服务节点时,向所述新的服务节点发送启动指令,以使所述新的服务节点启动。优选地,所述控制单元,还用于在所述目标程序服务集群完成所有的所述用户的服务请求之后,如果在预设时间段内未接收到用户针对所述目标程序服务集群的新的服务请求,则向所述目标程序服务集群发送关闭指令,以使所述目标程序服务集群中的所有服务节点关闭。优选地,所述控制单元,还用于当所述目标子程序服务集群中启动的服务节点的数量多于当前用户请求的服务所需的服务节点的数量时,向所述目标子程序服务集群中的至少一个服务节点发送关闭指令,以使所述至少一个服务节点关闭。优选地,所述控制单元,还用于在接收到所述用户的服务请求之前,向所述目标程序服务集群中的部分服务节点发送启动指令以使所述部分服务节点预先启动。上述技术方案具有如下有益效果:本专利技术提供的启动服务集群的方法及服务集群,在接收到用户的服务请求时,首先从多个子程序服务集群中确定出完成用户的服务请求的子程序服务集群作为目标子程序服务集群,并在目标子程序服务集群的当前状态指示目标子程序服务集群未启动时,控制目标子程序服务集群启动。即,本专利技术提供的启动服务集群的方法及服务集群,不用预先将所有的服务集群节点启动,而是根据具体的访问需求对服务集群中的子程序服务集群进行启动,即整个服务集群的架构是可调整,这使得服务集群节点的利用率大大提高,服务集群的功耗大大降低。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。图1为本专利技术实施例提供的启动服务集群的方法的一流程示意图;图2为本专利技术实施例提供的启动服务集群的方法的另一流程示意图;图3为本专利技术实施例提供的服务集群的结构示意图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本专利技术实施例提供的一种启动服务集群的方法,其中,服务集群包括:多个子程序服务集群,每个子程序服务集群包括至少一个服务节点,请参阅图1,示出了该方法的流程示意图,该方法可以包括:步骤S101:在接收到用户的服务本文档来自技高网...

【技术保护点】
一种启动服务集群的方法,其特征在于,所述服务集群包括:多个子程序服务集群,每个子程序服务集群包括至少一个服务节点,所述方法包括:在接收到用户的服务请求时,确定完成所述用户的服务请求的目标子程序服务集群,所述目标子程序服务集群为所述服务集群中的至少一个子程序服务集群;获取所述目标子程序服务集群的当前状态,所述目标子程序服务集群的当前状态包括所述目标子程序服务集群中当前启动的服务节点的数量;当所述目标子程序服务集群当前没有启动的服务节点时,启动所述目标子程序服务集群。

【技术特征摘要】
1.一种启动服务集群的方法,其特征在于,所述服务集群包括:多个子程序服务集群,每个子程序服务集群包括至少一个服务节点,所述方法包括:在接收到用户的服务请求时,确定完成所述用户的服务请求的目标子程序服务集群,所述目标子程序服务集群为所述服务集群中的至少一个子程序服务集群;获取所述目标子程序服务集群的当前状态,所述目标子程序服务集群的当前状态包括所述目标子程序服务集群中当前启动的服务节点的数量;当所述目标子程序服务集群当前没有启动的服务节点时,启动所述目标子程序服务集群。2.根据权利要求1所述的方法,其特征在于,每个所述子程序服务集群对应一容器且设置于所述容器中;则所述在接收到用户的服务请求时,确定完成所述用户的服务请求的目标子程序服务集群,包括:在接收到所述用户的服务请求时,从多个容器中确定目标容器;将所述目标容器中的子程序服务集群确定为完成所述服务请求的目标子程序服务集群;则当所述目标子程序服务集群当前没有启动的服务节点时,启动所述目标子程序服务集群具体为:通过启动所述目标容器以使所述标子程序服务集群启动。3.根据权利要求1或2所述的方法,其特征在于,当所述目标子程序服务集群当前没有启动的服务节点时,启动所述目标子程序服务集群,包括:当所述目标子程序服务集群当前没有启动的服务节点时,依据当前用户的服务请求的数量确定所述目标子程序服务集群中需要启动的服务节点的数量并启动。4.根据权利1或2所述的方法,其特征在于,所述方法还包括:当所述目标子程序服务集群有已启动的服务节点时,依据当前用户的服务请求的数量以及所述目标子程序服务集群中已启动的服务节点的数量确定是否需要启动新的服务节点;当需要启动所述新的服务节点时,启动所述新的服务节点以使当前已启动的服务节点的服务能力满足所述用户的服务请求。5.根据权利1或2所述的方法,其特征在于,所述方法还包括:在所述目标程序服务集群完成所有的所述用户的服务请求之后,如果在预设时间段内未接收到用户针对所述目标程序服务集群的新的服务请求,则关闭所述目标程序服务集群。6.根据权利要求4所述的方法,其特征在于,所述方法还包括:当所述目标子程序服务集群中启动的服务节点的数量多于当前用户请求的服务所需的服务节点的数量时,关闭所述目标子程序服务集群中的至少一个服务节点。7.根据权利要求1所述的方法,其特征在于,所述方法还包括:在接收到所述用户的服务请求之前,预先启动...

【专利技术属性】
技术研发人员:杨帅余涛
申请(专利权)人:联想北京有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1