CN110321226A - 主机的自动扩缩容方法、装置、主机及存储介质 - Google Patents
主机的自动扩缩容方法、装置、主机及存储介质 Download PDFInfo
- Publication number
- CN110321226A CN110321226A CN201910618936.3A CN201910618936A CN110321226A CN 110321226 A CN110321226 A CN 110321226A CN 201910618936 A CN201910618936 A CN 201910618936A CN 110321226 A CN110321226 A CN 110321226A
- Authority
- CN
- China
- Prior art keywords
- host
- message
- dilatation
- instruction
- scalable
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/505—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明提供一种主机的自动扩缩容方法、装置、主机及存储介质,涉及计算机技术领域。该方法通过按照预设定时周期,获取消息队列中的至少一条扩缩容消息,并根据获取的扩缩容消息的类型标识,分别执行扩容指令、缩容指令,其中,扩容指令用于添加新的主机,缩容指令用于移除目标业务的服务负载,从而在应对业务流量的暴增时,无需人为干预,可以及时对主机进行扩容,添加新的主机,并通过并发的调用新添加的主机处理目标业务,进而保证目标业务可以及时处理;而在应对业务流程的暴跌时,无需人为干预,可以及时对主机进行缩容,并发移除目标业务的服务负载,从而节省主机的资源成本。
Description
技术领域
本发明涉及计算机技术领域,特别涉及一种主机的自动扩缩容方法、装置、主机及存储介质。
背景技术
随着计算机和互联网技术的快速发展,互联网应用服务种类越来越多样化,各类应用服务被大量用户访问,特别是在推出一些活动或者发布一些重要消息时,各应用服务的业务流量相比平时呈指数级剧增;而当活动结束或消息发布一段时间后,各应用服务的业务流量相比之前则要降低,即各互联网应用服务的业务流量呈现不定期的变化。
现有的主要基于人为预期的判断来应对业务流量不定期的变化,即当出现业务流量增长时,采用人工干预的方式对相关服务进行扩容以及时处理增长的业务流量,而当出现业务流量的降低时,则采用人工干预的方式对相关服务进行缩容以降低成本。
但现有的采用人工干预的方式应对业务流量的变化,存在自动化程度低、处理不及时的问题。
发明内容
本发明的目的在于,针对上述现有技术中的不足,提供一种主机的自动扩缩容方法、装置、主机及存储介质,以解决上述人工干预方式存在的自动化程度低、处理不及时的问题。
为实现上述目的,本发明实施例采用的技术方案如下:
第一方面,本发明实施例提供了一种主机的自动扩缩容方法,包括:
按照预设定时周期,获取消息队列中的至少一条扩缩容消息,扩缩容消息包括:类型标识,类型标识用于指示扩缩容消息为扩容指令或缩容指令;根据扩缩容消息的类型标识,分别执行扩容指令、缩容指令,其中,扩容指令用于添加新的主机,缩容指令用于移除目标业务的服务负载。
可选地,上述方法还包括:监控获取主机的运行环境参数,其中,主机的运行环境参数包括主机资源参数或业务流量参数;根据运行环境参数生成扩缩容消息;将扩缩容消息写入消息队列。
可选地,上述根据运行环境参数生成扩缩容消息,包括:将主机的运行环境参数分别与第一预设阈值和第二预设阈值进行比较;主机的运行环境参数大于第一预设阈值时,生成扩容消息;主机的运行环境参数小于第二预设阈值时,生成缩容指令,其中,第一预设阈值大于第二预设阈值。
可选地,上述扩缩容消息还包括:主机标识;根据扩缩容消息的类型标识,分别执行扩容指令、缩容指令,包括:根据扩容指令中的主机标识添加新的主机,得到扩容后的主机集群;和/或,根据缩容指令中的主机标识,移除主机标识所对应主机中目标业务的服务负载。
可选地,上述根据扩缩容消息的类型标识,分别执行扩容指令、缩容指令之后,还包括:更新目标主机列表,目标主机列表用于记录当前服务中的主机标识。
第二方面,本发明实施例提供了一种主机的自动扩缩容装置,包括:获取模块和执行模块;获取模块,用于按照预设定时周期,获取消息队列中的至少一条扩缩容消息,扩缩容消息包括:类型标识,类型标识用于指示扩缩容消息为扩容指令或缩容指令;执行模块,用于根据扩缩容消息的类型标识,分别执行扩容指令、缩容指令,其中,扩容指令用于添加新的主机,缩容指令用于移除目标业务的服务负载。
可选地,上述装置还包括:监控模块、生成模块及写入模块;监控模块,用于监控获取主机的运行环境参数,其中,主机的运行环境参数包括主机资源参数或业务流量参数;生成模块,用于根据运行环境参数生成扩缩容消息;写入模块,用于将扩缩容消息写入消息队列。
可选地,上述生成模块,具体用于将主机的运行环境参数分别与第一预设阈值和第二预设阈值进行比较;主机的运行环境参数大于第一预设阈值时,生成扩容消息;主机的运行环境参数小于第二预设阈值时,生成缩容指令,其中,第一预设阈值大于第二预设阈值。
可选地,扩缩容消息还包括:主机标识;上述执行模块,具体用于根据扩容指令中的主机标识添加新的主机,得到扩容后的主机集群;和/或,根据缩容指令中的主机标识,移除主机标识所对应主机中目标业务的服务负载。
可选地,上述执行模块,还用于更新目标主机列表,目标主机列表用于记录当前服务中的主机标识。
第三方面,本发明实施例提供了一种主机,包括:处理器、存储介质和总线,存储介质存储有处理器可执行的机器可读指令,当电子设备运行时,处理器与存储介质之间通过总线通信,处理器执行机器可读指令,以执行时执行上述第一方面主机的自动扩缩容方法的步骤。
第四方面,本发明实施例提供了一种存储介质,该存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述第一方面主机的自动扩缩容方法的步骤。
本发明的有益效果是:
本发明实施例提供的一种主机的自动扩缩容方法、装置、主机及存储介质,该方法通过按照预设定时周期,获取消息队列中的至少一条扩缩容消息,扩缩容消息包括:类型标识,类型标识用于指示扩缩容消息为扩容指令或缩容指令;并根据获取的扩缩容消息的类型标识,分别执行扩容指令、缩容指令,其中,扩容指令用于添加新的主机,缩容指令用于移除目标业务的服务负载,从而在应对业务流量的暴增时,无需人为干预,可以及时对主机进行扩容,添加新的主机,并通过并发的调用新添加的主机处理目标业务,进而保证目标业务可以及时处理;而在应对业务流程的暴跌时,无需人为干预,可以及时对主机进行缩容,并发移除目标业务的服务负载,从而节省主机的资源成本。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本发明实施例提供的一种主机的自动扩缩容方法的流程示意图;
图2为本发明实施例提供的另一种主机的自动扩缩容方法的流程示意图;
图3为本发明实施例提供的又一种主机的自动扩缩容方法的流程示意图;
图4为本发明实施例提供的又一种主机的自动扩缩容方法的流程示意图;
图5为本发明实施例提供的又一种主机的自动扩缩容方法的流程示意图;
图6为本发明实施例提供的一种主机的自动扩缩容装置的结构示意图;
图7为本发明实施例提供的另一种主机的自动扩缩容装置的结构示意图;
图8为本发明实施例提供的一种主机的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
图1为本发明实施例提供的一种主机的自动扩缩容方法的流程示意图。该方法的执行主体可以是主机,也可以是虚拟机、实体服务器、实体服务器上的虚拟机或其他与主机具有类似功能的服务器端等,本申请并不对此进行限定。可选地,该方法可以基于jenkins平台实现,或其他与jenkins平台具有类似功能的其他平台实现。
本申请以基于jenkins平台为例进行说明,如图1所示,该方法包括:
S101、按照预设定时周期,获取消息队列中的至少一条扩缩容消息,扩缩容消息包括:类型标识,类型标识用于指示扩缩容消息为扩容指令或缩容指令。
其中,定时周期为设定的获取消息队列中扩缩容消息的时间间隔,根据不同的应用场景,该定时周期可以以秒或分或其他时间单位为定时周期单位,本申请在此并不对此进行限定。消息队列作为在消息的传输过程中保存消息的容器,可以用于保存扩缩容消息,而扩缩容消息指的是指示主机进行扩容或缩容的消息,扩缩容消息可以包括类型标识,通过类型标识可以指示扩缩容消息具体为扩容指令还是缩容指令。
需要说明的是,消息队列中包括多条扩缩容消息时,本申请并不对多条扩缩容消息所包括的类型标识的类别进行限定,即消息队列中包括多条扩缩容消息,该多条扩缩容消息对应的指令可以只包括扩容指令,只包括缩容指令,或者既包括扩容指令也包括缩容指令的情况,根据实际的应用情况,消息队列中可以包括多个类别标识的扩缩容消息。
S102、根据扩缩容消息的类型标识,分别执行扩容指令、缩容指令。
其中,扩容指令用于添加新的主机,缩容指令用于移除目标业务的服务负载。
可选地,类型标识可以设置于扩缩容消息的消息头,若扩缩容消息中的类型标识为扩容消息标识,则对应的执行扩容指令,若扩缩容消息中的类型标识为缩容消息标识,则对应的执行缩容指令。
可选地,扩容指令也可以用于完成目标业务服务应用的部署、添加目标业务服务负载、添加目标业务服务监控等;缩容指令也可用于移除目标业务服务监控、主机下架等,本申请在此并不对扩容指令或缩容指令所包括的内容进行具体限定。
可选地,服务负载可以是主机、虚拟机、实体服务器、实体服务器上的虚拟机等能进行目标业务处理的相关服务负载,可以用于对服务请求迁移,删除相关业务数据等,本申请在此不具体进行限定。
可选地,将上述方法基于jenkins平台实现时,Jenkins作为一个开源软件项目,是基于Java开发的一种持续集成工具,基于jenkins平台可以采用三个任务协同完成,其中,第一任务可以按照预设定时周期,检查消息队列中是否有消息存在,若存在,获取消息队列中的至少一条扩缩容消息,但最多一次只能拉取10条消息;第二任务和第三任务则根据扩缩容消息的类型标识,分别执行扩容指令、缩容指令。其中,可以基于jenkins平台的消息处理管控中心,将获取到的扩缩容消息依据所携带的类型标识对扩缩容消息进行分类,分为扩容消息和缩容消息,对于扩容消息,可以并发的调用新添加的主机去处理目标业务,以便可以及时应对业务流量暴增的情况,提高业务流量的处理能力;而对于缩容消息,可以并发的移除目标业务的服务负载,以便可以及时应对业务流量暴跌的情况,有效节约主机的资源成本。
综上所述,本申请提供的一种主机的自动扩缩容方法,该方法通过按照预设定时周期,获取消息队列中的至少一条扩缩容消息,扩缩容消息包括:类型标识,类型标识用于指示扩缩容消息为扩容指令或缩容指令;并根据获取的扩缩容消息的类型标识,分别执行扩容指令、缩容指令,其中,扩容指令用于添加新的主机,缩容指令用于移除目标业务的服务负载,从而在应对业务流量的暴增时,无需人为干预,可以及时对主机进行扩容,添加新的主机,并通过并发的调用新添加的主机处理目标业务,进而保证目标业务可以及时处理;而在应对业务流程的暴跌时,无需人为干预,可以及时对主机进行缩容,并发移除目标业务的服务负载,从而节省主机的资源成本。
图2为本发明实施例提供的另一种主机的自动扩缩容方法的流程示意图。可选地,如图2所示,上述方法还包括:
S201、监控获取主机的运行环境参数,其中,主机的运行环境参数包括主机资源参数或业务流量参数。
主机的运行环境参数用于指示主机的运行状态,该运行环境参数可以包括主机资源参数或业务流量参数,主机资源参数可以包括主机的CUP运行参数、内存使用情况参数、虚拟机内存等;业务流量参数可以包括网络参数、并发用户数、总用户数、峰值流量、峰值在线用户数等,根据不同的应用场景,主机的运行环境参数中的主机资源参数或业务流量参数可对应相应的参数,本申请并不对此进行限定。
可选地,根据实际的应用场景,监控获取主机的运行环境参数时,可以选择监控获取主机的主机资源参数或业务流量参数作为生成扩缩容消息的依据,本申请在此并不对该监控获取的类型进行限定。
S202、根据运行环境参数生成扩缩容消息。
根据上述所获取的主机的运行环境参数即可生成对应的扩缩容消息,即通过运行环境参数可以确定是生成扩容消息还是缩容消息。
S203、将扩缩容消息写入消息队列。
可选地,可以将生成的扩缩容消息保存到消息队列中,充分利用消息队列的削峰作用,即消息队列可以通过异步处理,将短时间高并发产生的扩缩容消息存储在消息队列中,从而削平高峰期的并发事务,可以有效抵御业务流量暴增时,大量处理业务对主机系统的冲击。而扩缩容消息写入消息队列后,主机则可以根据预设定时周期,从该消息队列中获取所写入的扩缩容消息,并根据扩缩容消息的类型标识,分别执行扩容指令、缩容指令,具体内容可参见上述所述,本申请在此不再赘述。
图3为本发明实施例提供的又一种主机的自动扩缩容方法的流程示意图。可选地,如图3所示,上述根据运行环境参数生成扩缩容消息,包括:
S301、将主机的运行环境参数分别与第一预设阈值和第二预设阈值进行比较。
通过将主机的运行环境参数与第一预设阈值、第二预设阈值分别进行对比,即可确定扩缩容消息的类型标识,即该主机的运行环境参数对应的扩缩容消息的类型标识是扩容消息标识,还是缩容消息标识。
S302、主机的运行环境参数大于第一预设阈值时,生成扩容消息;主机的运行环境参数小于第二预设阈值时,生成缩容消息。
其中,第一预设阈值大于第二预设阈值。第一预设阈值用于判断是否生成扩容消息,第二预设阈值用于判断是否生成缩容消息,此外,需要说明的是,若所监控获取的主机的运行环境参数为主机资源参数,则第一预设阈值和第二预设阈值对应的为主机资源参数的相关阈值;若所监控获取的主机的运行环境参数为业务流量参数,则第一预设阈值和第二预设阈值对应的为业务流量参数的相关阈值,第一预设阈值和第二预设阈值的具体选择可依据主机的运行环境参数和实际的应用场景设定,本申请对此并不进行限定。
可选地,根据主机的运行环境参数生成扩容指令或缩容指令的具体过程可以是:当主机的运行环境参数大于第一预设阈值时,则确定生成的消息为扩容消息;而当主机的运行环境参数小于第二预设阈值时,则确定生成的消息为缩容消息。
可选地,上述扩缩容消息还包括:主机标识;根据扩缩容消息的类型标识,分别执行扩容指令、缩容指令,包括:根据扩容指令中的主机标识添加新的主机,得到扩容后的主机集群;和/或,根据缩容指令中的主机标识,移除主机标识所对应主机中目标业务的服务负载。
扩缩容消息还包括主机标识,该主机标识可以是主机实例ID、主机IP、主机设备序列号等,根据不同的应用场景,可以选取相应的主机标识去唯一标注主机。
可选地,扩缩容消息中还包括主机标识,当执行扩容指令时,可以根据扩容指令中的主机标识添加新的主机,得到扩容后的主机集群,可选的,可以根据预设的主机添加方式确定新的主机,从而得到由多个主机组成的主机集群,通过该主机集群处理对应的业务。
其中,新主机启用后,可以通过预设的服务镜像进行配置,例如复制原有主机的服务镜像,使得可以保证由多个主机组成的主机集群中环境的一致性,该环境可以是操作系统类型、操作系统版本等,本申请并不对此进行限定,根据不同的应用场景,可对应不同的环境参数。
可选地,在添加新主机后,还应对新主机的服务运行环境、主机角色等必要条件进行验证,例如验证复制的服务镜像是否完善,以便确保新主机的正常工作。其中,服务运行环境可以包括java运行环境、超文本预处理器(PHP:Hypertext Preprocessor,PHP)运行环境等,主机角色指的是主机对外围接口和外围数据的读取权限,当然,根据不同的应用场景,还可以包括其他必要条件,本申请在此并不作限定。
可选地,扩缩容消息中还包括主机标识,当执行缩容指令时,可以根据该主机标识去移除主机标识所对应主机中目标业务的服务负载,也即可以移除主机中目标业务所对应的虚拟机、实体服务器、实体服务器上的虚拟机等服务负载等,本申请在此并不对目标业务的服务负载的类型进行限定。可选的,移除主机标识所对应主机中目标业务的服务负载时,可以将服务负载中的服务请求进行移除,对于移除后的服务负载,可以进行停机操作,执行停机操作时,该主机的所有服务均会被销毁。
图4为本发明实施例提供的又一种主机的自动扩缩容方法的流程示意图。可选地,如图4所示,上述根据扩缩容消息的类型标识,分别执行扩容指令、缩容指令之后,还包括:
S401、更新目标主机列表,目标主机列表用于记录当前服务中的主机标识。
其中,由于扩容指令用于添加新的主机,缩容指令用于移除目标业务的服务负载,也即执行扩容指令或缩容指令时,所对应的当前服务中的主机列表可能会发生相应的变化,而通过更新目标主机列表可以知晓当前执行扩容或缩容指令后还在服务中的主机信息。可选地,当所服务的主机发生变化时,更新目标主机列表中的主机标识,例如添加新主机的标识、删除移除主机的主机标识。
可选地,根据扩缩容消息的类型标识执行扩容指令后,更新目标主机列表时,可以采用下述的方式对目标主机列表进行更新,即主机在获取到某一条扩容消息后,解析出主机标识,并从该主机标识对应的版本数据库中查询主机标识所对应的版本信息,进而根据该版本信息可以对新添加的主机进行相关部署操作,得到部署后的新主机后,根据部署成功后的新主机标识更新目标主机列表,使得可以获取到当前最新的主机列表。
可选地,主机列表中以主机IP作为主机标识,若获取到的标识不为主机IP,需要将其他标识转化为主机IP,然后进行更新目标主机列表。可选地,根据扩缩容消息的类型标识执行缩容指令后,更新目标主机列表时,可以采用下述的方式对目标主机列表进行更新,即主机在获取到某一条缩容消息后,解析出主机标识,根据该主机标识移除所对应主机中目标业务的服务负载,得到移除后的主机标识,根据移除后的主机标识可以对所部署的主机进行更新,根据部署更新成功后的主机标识可以更新目标主机列表。
当然,更新目标主机列表时,可以采用手动更新,也可以定时自动更新的方式更新,本申请在此并不对目标主机列表的更新方式进行限定,根据不同的应用场景可以选择相应的更新方式。
可选地,上述更新目标主机列表之后,还包括:从消息队列中移除已执行过的扩缩容消息,通过该移除操作,可以及时对消息队列进行相应的清空操作,保证有新的扩缩容消息生成时可以及时保存到消息队列中,进而保证新的业务数据可以及时处理。
图5为本发明实施例提供的又一种主机的自动扩缩容方法的流程示意图。该方法基本原理及产生的技术效果与前述对应的方法实施例相同,为简要描述,本实施例中未提及部分,可参考上述方法实施例中的相应内容。可选地,如图5所示,该方法包括:
S501、监控获取主机的运行环境参数,其中,主机的运行环境参数包括主机资源参数或业务流量参数。
S502、将主机的运行环境参数分别与第一预设阈值和第二预设阈值进行比较。
S503、主机的运行环境参数大于第一预设阈值时,生成扩容消息;主机的运行环境参数小于第二预设阈值时,生成缩容消息。
其中,第一预设阈值大于第二预设阈值。
S504、将扩缩容消息写入消息队列。
S505、按照预设定时周期,获取消息队列中的至少一条扩缩容消息。
扩缩容消息包括:类型标识,类型标识用于指示扩缩容消息为扩容指令或缩容指令。
S506、根据扩缩容消息的类型标识,分别执行扩容指令、缩容指令。
其中,扩容指令用于添加新的主机,缩容指令用于移除目标业务的服务负载。
S507、更新目标主机列表,目标主机列表用于记录当前服务中的主机标识。
图6为本发明实施例提供的一种主机的自动扩缩容装置的结构示意图。该装置基本原理及产生的技术效果与前述对应的方法实施例相同,为简要描述,本实施例中未提及部分,可参考方法实施例中的相应内容。
如图6所示,该装置包括:获取模块110和执行模块120。其中,获取模块110,用于按照预设定时周期,获取消息队列中的至少一条扩缩容消息,扩缩容消息包括:类型标识,类型标识用于指示扩缩容消息为扩容指令或缩容指令;执行模块120,用于根据扩缩容消息的类型标识,分别执行扩容指令、缩容指令,其中,扩容指令用于添加新的主机,缩容指令用于移除目标业务的服务负载。
图7为本发明实施例提供的另一种主机的自动扩缩容装置的结构示意图。可选地,如图7所示,上述装置还包括:监控模块130、生成模块140及写入模块150;监控模块130,用于监控获取主机的运行环境参数,其中,主机的运行环境参数包括主机资源参数或业务流量参数;生成模块140,用于根据运行环境参数生成扩缩容消息;写入模块150,用于将扩缩容消息写入消息队列。
可选地,上述生成模块140,具体用于将主机的运行环境参数分别与第一预设阈值和第二预设阈值进行比较;主机的运行环境参数大于第一预设阈值时,生成扩容消息;主机的运行环境参数小于第二预设阈值时,生成缩容指令,其中,第一预设阈值大于第二预设阈值。
可选地,扩缩容消息还包括:主机标识;上述执行模块120,具体用于根据扩容指令中的主机标识添加新的主机,得到扩容后的主机集群;和/或,根据缩容指令中的主机标识,移除主机标识所对应主机中目标业务的服务负载。
可选地,上述执行模块120,还用于更新目标主机列表,目标主机列表用于记录当前服务中的主机标识。
上述装置用于执行前述实施例提供的方法,其实现原理和技术效果类似,在此不再赘述。
以上这些模块可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个特定集成电路(Application Specific Integrated Circuit,简称ASIC),或,一个或多个微处理器(Digital Signal Processor,简称DSP),或,一个或者多个现场可编程门阵列(Field Programmable Gate Array,简称FPGA)等。再如,当以上某个模块通过处理元件调度程序代码的形式实现时,该处理元件可以是通用处理器,例如中央处理器(CentralProcessing Unit,简称CPU)或其它可以调用程序代码的处理器。再如,这些模块可以集成在一起,以片上系统(system-on-a-chip,简称SOC)的形式实现。
图8为本发明实施例提供的一种主机的结构示意图。如图8所示,该主机,包括:处理器210、存储介质220和总线230,存储介质220存储有处理器210可执行的机器可读指令,当主机运行时,处理器210与存储介质220之间通过总线通信,处理器210执行机器可读指令,以执行时执行上述方法实施例。具体实现方式和技术效果类似,这里不再赘述。
可选地,本发明还提供一种存储介质,该存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述方法实施例。具体实现方式和技术效果类似,这里不再赘述。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(英文:processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(英文:Read-Only Memory,简称:ROM)、随机存取存储器(英文:Random Access Memory,简称:RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种主机的自动扩缩容方法,其特征在于,包括:
按照预设定时周期,获取消息队列中的至少一条扩缩容消息,所述扩缩容消息包括:类型标识,所述类型标识用于指示所述扩缩容消息为扩容指令或缩容指令;
根据所述扩缩容消息的类型标识,分别执行扩容指令、缩容指令,其中,所述扩容指令用于添加新的主机,所述缩容指令用于移除目标业务的服务负载。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
监控获取主机的运行环境参数,其中,所述主机的运行环境参数包括主机资源参数或业务流量参数;
根据所述运行环境参数生成所述扩缩容消息;
将所述扩缩容消息写入所述消息队列。
3.根据权利要求2所述的方法,其特征在于,所述根据所述运行环境参数生成所述扩缩容消息,包括:
将所述主机的运行环境参数分别与第一预设阈值和第二预设阈值进行比较;
所述主机的运行环境参数大于第一预设阈值时,生成扩容消息;所述主机的运行环境参数小于第二预设阈值时,生成缩容消息,其中,第一预设阈值大于第二预设阈值。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述扩缩容消息还包括:主机标识;
所述根据所述扩缩容消息的类型标识,分别执行扩容指令、缩容指令,包括:
根据所述扩容指令中的主机标识添加新的主机,得到扩容后的主机集群;和/或,
根据所述缩容指令中的主机标识,移除所述主机标识所对应主机中目标业务的服务负载。
5.根据权利要求4所述的方法,其特征在于,所述根据所述扩缩容消息的类型标识,分别执行扩容指令、缩容指令之后,还包括:
更新目标主机列表,所述目标主机列表用于记录当前服务中的主机标识。
6.一种主机的自动扩缩容装置,其特征在于,包括:获取模块和执行模块;
所述获取模块,用于按照预设定时周期,获取消息队列中的至少一条扩缩容消息,所述扩缩容消息包括:类型标识,所述类型标识用于指示所述扩缩容消息为扩容指令或缩容指令;
所述执行模块,用于根据所述扩缩容消息的类型标识,分别执行扩容指令、缩容指令,其中,所述扩容指令用于添加新的主机,所述缩容指令用于移除目标业务的服务负载。
7.根据权利要求6所述的装置,其特征在于,所述装置还包括:监控模块、生成模块及写入模块;
所述监控模块,用于监控获取主机的运行环境参数,其中,所述主机的运行环境参数包括主机资源参数或业务流量参数;
所述生成模块,用于根据所述运行环境参数生成所述扩缩容消息;
所述写入模块,用于将所述扩缩容消息写入所述消息队列。
8.根据权利要求6或7所述的装置,其特征在于,所述扩缩容消息还包括:主机标识;所述执行模块,具体用于根据所述扩容指令中的主机标识添加新的主机,得到扩容后的主机集群;和/或,根据所述缩容指令中的主机标识,移除所述主机标识所对应主机中目标业务的服务负载。
9.一种主机,其特征在于,包括:处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储介质之间通过总线通信,所述处理器执行所述机器可读指令,以执行时执行如权利要求1-5任一所述的主机的自动扩缩容方法的步骤。
10.一种存储介质,其特征在于,该存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如权利要求1-5任一所述的主机的自动扩缩容方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910618936.3A CN110321226A (zh) | 2019-07-09 | 2019-07-09 | 主机的自动扩缩容方法、装置、主机及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910618936.3A CN110321226A (zh) | 2019-07-09 | 2019-07-09 | 主机的自动扩缩容方法、装置、主机及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110321226A true CN110321226A (zh) | 2019-10-11 |
Family
ID=68123200
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910618936.3A Pending CN110321226A (zh) | 2019-07-09 | 2019-07-09 | 主机的自动扩缩容方法、装置、主机及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110321226A (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110782211A (zh) * | 2019-10-25 | 2020-02-11 | 上海燕汐软件信息科技有限公司 | 一种数据处理方法、装置、电子设备及存储介质 |
CN111177160A (zh) * | 2019-11-06 | 2020-05-19 | 腾讯云计算(北京)有限责任公司 | 服务更新方法、装置、服务器及介质 |
CN111754117A (zh) * | 2020-06-24 | 2020-10-09 | 网银在线(北京)科技有限公司 | 任务下发方法、装置、电子设备及存储介质 |
CN112506444A (zh) * | 2020-12-28 | 2021-03-16 | 南方电网深圳数字电网研究院有限公司 | 基于Kubernetes集群的扩缩容控制方法和装置、电子设备 |
CN112925770A (zh) * | 2021-03-09 | 2021-06-08 | 京东数字科技控股股份有限公司 | 一种数据库扩容方法、装置、设备和介质 |
CN113190324A (zh) * | 2020-01-14 | 2021-07-30 | 阿里巴巴集团控股有限公司 | 流量分配方法、设备、系统及存储介质 |
CN113360250A (zh) * | 2021-08-09 | 2021-09-07 | 连连宝(杭州)信息技术有限公司 | 一种应用服务资源控制方法、装置、设备及介质 |
CN113568706A (zh) * | 2021-07-27 | 2021-10-29 | 北京百度网讯科技有限公司 | 针对业务的容器调整方法、装置、电子设备和存储介质 |
CN113609071A (zh) * | 2021-07-28 | 2021-11-05 | 北京金山云网络技术有限公司 | 一种用于消息队列的自动扩容方法及装置 |
CN114500553A (zh) * | 2020-10-23 | 2022-05-13 | 中移(苏州)软件技术有限公司 | 一种区块链网络的处理方法、系统、电子设备及存储介质 |
CN114666615A (zh) * | 2022-03-10 | 2022-06-24 | 北京达佳互联信息技术有限公司 | 资源调配方法、装置、服务器、程序和存储介质 |
CN116719652A (zh) * | 2023-08-08 | 2023-09-08 | 支付宝(杭州)信息技术有限公司 | 基于消息的多子作业动态分流方法、装置和系统 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105162859A (zh) * | 2015-08-20 | 2015-12-16 | 湖南亿谷科技发展股份有限公司 | 服务器动态扩容系统及方法 |
CN106484530A (zh) * | 2016-09-05 | 2017-03-08 | 努比亚技术有限公司 | 一种分布式任务调度运维监控系统及方法 |
CN107145393A (zh) * | 2017-04-27 | 2017-09-08 | 努比亚技术有限公司 | 一种负载调整方法、设备及计算机可读存储介质 |
CN107566214A (zh) * | 2017-08-29 | 2018-01-09 | 微梦创科网络科技(中国)有限公司 | 一种性能测试方法和装置 |
CN109343965A (zh) * | 2018-10-31 | 2019-02-15 | 北京金山云网络技术有限公司 | 资源调整方法、装置、云平台和服务器 |
CN109669758A (zh) * | 2018-09-11 | 2019-04-23 | 深圳平安财富宝投资咨询有限公司 | 服务器资源的调配方法、装置、设备及存储介质 |
US20190138338A1 (en) * | 2017-11-06 | 2019-05-09 | Fujitsu Limited | Management apparatus and information processing system |
-
2019
- 2019-07-09 CN CN201910618936.3A patent/CN110321226A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105162859A (zh) * | 2015-08-20 | 2015-12-16 | 湖南亿谷科技发展股份有限公司 | 服务器动态扩容系统及方法 |
CN106484530A (zh) * | 2016-09-05 | 2017-03-08 | 努比亚技术有限公司 | 一种分布式任务调度运维监控系统及方法 |
CN107145393A (zh) * | 2017-04-27 | 2017-09-08 | 努比亚技术有限公司 | 一种负载调整方法、设备及计算机可读存储介质 |
CN107566214A (zh) * | 2017-08-29 | 2018-01-09 | 微梦创科网络科技(中国)有限公司 | 一种性能测试方法和装置 |
US20190138338A1 (en) * | 2017-11-06 | 2019-05-09 | Fujitsu Limited | Management apparatus and information processing system |
CN109669758A (zh) * | 2018-09-11 | 2019-04-23 | 深圳平安财富宝投资咨询有限公司 | 服务器资源的调配方法、装置、设备及存储介质 |
CN109343965A (zh) * | 2018-10-31 | 2019-02-15 | 北京金山云网络技术有限公司 | 资源调整方法、装置、云平台和服务器 |
Non-Patent Citations (1)
Title |
---|
唐清安等: "《网络的建设与维护》", 31 May 2012 * |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110782211A (zh) * | 2019-10-25 | 2020-02-11 | 上海燕汐软件信息科技有限公司 | 一种数据处理方法、装置、电子设备及存储介质 |
CN111177160B (zh) * | 2019-11-06 | 2023-08-04 | 腾讯云计算(北京)有限责任公司 | 服务更新方法、装置、服务器及介质 |
CN111177160A (zh) * | 2019-11-06 | 2020-05-19 | 腾讯云计算(北京)有限责任公司 | 服务更新方法、装置、服务器及介质 |
CN113190324A (zh) * | 2020-01-14 | 2021-07-30 | 阿里巴巴集团控股有限公司 | 流量分配方法、设备、系统及存储介质 |
CN111754117A (zh) * | 2020-06-24 | 2020-10-09 | 网银在线(北京)科技有限公司 | 任务下发方法、装置、电子设备及存储介质 |
CN114500553A (zh) * | 2020-10-23 | 2022-05-13 | 中移(苏州)软件技术有限公司 | 一种区块链网络的处理方法、系统、电子设备及存储介质 |
CN112506444A (zh) * | 2020-12-28 | 2021-03-16 | 南方电网深圳数字电网研究院有限公司 | 基于Kubernetes集群的扩缩容控制方法和装置、电子设备 |
CN112925770A (zh) * | 2021-03-09 | 2021-06-08 | 京东数字科技控股股份有限公司 | 一种数据库扩容方法、装置、设备和介质 |
CN113568706B (zh) * | 2021-07-27 | 2024-01-19 | 北京百度网讯科技有限公司 | 针对业务的容器调整方法、装置、电子设备和存储介质 |
CN113568706A (zh) * | 2021-07-27 | 2021-10-29 | 北京百度网讯科技有限公司 | 针对业务的容器调整方法、装置、电子设备和存储介质 |
CN113609071A (zh) * | 2021-07-28 | 2021-11-05 | 北京金山云网络技术有限公司 | 一种用于消息队列的自动扩容方法及装置 |
CN113360250A (zh) * | 2021-08-09 | 2021-09-07 | 连连宝(杭州)信息技术有限公司 | 一种应用服务资源控制方法、装置、设备及介质 |
CN114666615A (zh) * | 2022-03-10 | 2022-06-24 | 北京达佳互联信息技术有限公司 | 资源调配方法、装置、服务器、程序和存储介质 |
CN114666615B (zh) * | 2022-03-10 | 2024-04-16 | 北京达佳互联信息技术有限公司 | 资源调配方法、装置、服务器、程序和存储介质 |
CN116719652A (zh) * | 2023-08-08 | 2023-09-08 | 支付宝(杭州)信息技术有限公司 | 基于消息的多子作业动态分流方法、装置和系统 |
CN116719652B (zh) * | 2023-08-08 | 2024-04-19 | 支付宝(杭州)信息技术有限公司 | 基于消息的多子作业动态分流方法、装置和系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110321226A (zh) | 主机的自动扩缩容方法、装置、主机及存储介质 | |
CN106776395B (zh) | 一种共享集群的任务调度方法及装置 | |
CN110708369B (zh) | 设备节点的文件部署方法、装置、调度服务器及存储介质 | |
CN106095483A (zh) | 服务的自动化部署方法及装置 | |
US20070198697A1 (en) | Method of refactoring methods within an application | |
JP7161560B2 (ja) | 人工知能開発プラットフォームの管理方法及び装置、媒体 | |
CN110737425B (zh) | 一种计费平台系统的应用程序的建立方法及装置 | |
CN112559143A (zh) | 任务调度方法、系统及计算设备 | |
CN108733536B (zh) | 监控管理系统及方法 | |
CN110737504A (zh) | 一种深度学习模型训练容错方法、系统、终端及存储介质 | |
CN110908644B (zh) | 状态节点的配置方法、装置、计算机设备和存储介质 | |
CN110704382B (zh) | 文件部署方法、装置、服务器及存储介质 | |
CN112448833A (zh) | 一种多管理域的通信方法和装置 | |
CN111124382A (zh) | Java中的属性赋值方法、装置及服务器 | |
CN108804258A (zh) | 数据恢复方法、装置、移动终端和存储介质 | |
CN114443302A (zh) | 容器集群扩容方法、系统、终端及存储介质 | |
Heydarnoori et al. | Towards an automated deployment planner for composition of web services as software components | |
CN111897599A (zh) | 基于微核模型插件模式的服务方法、装置、设备及存储介质 | |
CN108874586A (zh) | 数据恢复方法及相关产品 | |
EP2975516B1 (en) | Intelligent application back stack management | |
CN113742064B (zh) | 一种服务器集群的资源整理方法、系统、设备及介质 | |
US11768704B2 (en) | Increase assignment effectiveness of kubernetes pods by reducing repetitive pod mis-scheduling | |
JP2013020494A (ja) | ソフトウェア実行システムおよびソフトウェア実行方法およびプログラム | |
CN106557359B (zh) | 一种任务调度方法及系统 | |
CN115098259A (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 |
Application publication date: 20191011 |
|
RJ01 | Rejection of invention patent application after publication |