CN113806068B - 业务系统的扩容方法及装置、可读存储介质、终端 - Google Patents
业务系统的扩容方法及装置、可读存储介质、终端 Download PDFInfo
- Publication number
- CN113806068B CN113806068B CN202110875840.2A CN202110875840A CN113806068B CN 113806068 B CN113806068 B CN 113806068B CN 202110875840 A CN202110875840 A CN 202110875840A CN 113806068 B CN113806068 B CN 113806068B
- Authority
- CN
- China
- Prior art keywords
- buffer queue
- service
- service system
- capacity expansion
- service requests
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 51
- 238000012544 monitoring process Methods 0.000 claims abstract description 10
- 238000012545 processing Methods 0.000 claims description 55
- 238000004590 computer program Methods 0.000 claims description 10
- 230000008569 process Effects 0.000 claims description 9
- 239000002699 waste material Substances 0.000 claims description 8
- 238000004064 recycling Methods 0.000 claims description 3
- 239000000725 suspension Substances 0.000 claims description 3
- 238000012423 maintenance Methods 0.000 abstract description 4
- 238000010586 diagram Methods 0.000 description 8
- 230000008859 change Effects 0.000 description 5
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000010485 coping Effects 0.000 description 2
- 238000009825 accumulation Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000009191 jumping Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000026676 system process Effects 0.000 description 1
- 238000010998 test method Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
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/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and 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/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/548—Queue
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Debugging And Monitoring (AREA)
Abstract
一种业务系统的扩容方法及装置、可读存储介质、终端,所述方法包括:监控所述业务系统的缓冲队列中业务请求的数量;每当所述缓冲队列被写满时,暂停向所述缓冲队列写入业务请求,然后当所述缓冲队列中的业务请求的数量降至预设比例时,重新开放向所述缓冲队列写入业务请求;当在第一预设时长内所述缓冲队列被写满的次数大于等于预设次数时,确定需要对所述业务系统进行扩容。本发明可以在节省资源和满足峰值访问、降低系统的运维压力之间达到平衡。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种业务系统的扩容方法及装置、可读存储介质、终端。
背景技术
在现有技术中,基于大数据、微服务系统的各种应用得到了广泛重视,庞杂的业务被细分成多个可复用的服务(或子服务),极大的提高了业务系统整体的健壮性和可复用性。
在现有的业务系统中,系统负载不会稳定在均值,而是根据时段、业务变更等原因在短时间内会出现远超平时状态的峰值,导致要么为了应对峰值访问而部署大量计算资源,导致巨大资源浪费;要么在峰值访问时难以应对导致堆积大量业务请求无法处理,严重影响客户满意度。
亟需一种业务系统的扩容方法,能够在节省资源和满足峰值访问、降低系统的运维压力之间达到平衡。
发明内容
本发明解决的技术问题是提供一种业务系统的扩容方法及装置、可读存储介质、终端,可以在节省资源和满足峰值访问、降低系统的运维压力之间达到平衡。
为解决上述技术问题,本发明实施例提供一种业务系统的扩容方法,包括:监控所述业务系统的缓冲队列中业务请求的数量;每当所述缓冲队列被写满时,暂停向所述缓冲队列写入业务请求,然后当所述缓冲队列中的业务请求的数量降至预设比例时,重新开放向所述缓冲队列写入业务请求;当在第一预设时长内所述缓冲队列被写满的次数大于等于预设次数时,确定需要对所述业务系统进行扩容。
可选的,所述业务系统的扩容方法还包括:增加处理设备,对所述业务系统的缓冲队列中的一部分业务请求进行处理。
可选的,所述业务系统的扩容方法还包括:在增加所述处理设备并且所述缓冲队列中业务请求的数量降至零后,如果在第二预设时长内所述缓冲队列中的业务请求的数量持续为零,则对所述处理设备进行回收。
可选的,每当增加处理设备时,选择的处理设备与之前预设轮数内选择的处理设备不同。
可选的,所述业务系统的扩容方法还包括:每当所述缓冲队列被写满时,将待写入所述缓冲队列的业务请求写入废弃池。
可选的,所述业务系统的扩容方法还包括:如果当前无可用资源,则发送报警信息。
可选的,所述业务系统的扩容方法还包括:如果当前无可用资源,则对于所述缓冲队列中的一个或多个业务请求,仅对每个业务请求的一部分进行处理。
可选的,满足以下一项或多项:待写入所述缓冲队列的业务请求越多,所述第一预设时长越小;待写入所述缓冲队列的业务请求越多,所述预设次数越小。
可选的,所述预设比例选自:80%~95%。
为解决上述技术问题,本发明实施例提供一种业务系统的扩容装置,包括:监控模块,用于监控所述业务系统的缓冲队列中业务请求的数量;暂停模块,用于每当所述缓冲队列被写满时,暂停向所述缓冲队列写入业务请求,然后当所述缓冲队列中的剩余业务请求的数量降至预设比例时,重新开放向所述缓冲队列写入业务请求;确定扩容模块,用于当在第一预设时长内所述缓冲队列被写满的次数大于等于预设次数时,确定需要对所述业务系统进行扩容。
为解决上述技术问题,本发明实施例提供一种可读存储介质,其上存储有计算机程序,所述计算机程序被处理器运行时执行上述业务系统的扩容方法的步骤。
为解决上述技术问题,本发明实施例提供一种终端,包括存储器和处理器,所述存储器上存储有能够在所述处理器上运行的计算机程序,所述处理器运行所述计算机程序时执行上述业务系统的扩容方法的步骤。
与现有技术相比,本发明实施例的技术方案具有以下有益效果:
在本发明实施例中,通过设置监控所述业务系统的缓冲队列中业务请求的数量,并在所述缓冲队列被写满时,设置暂停写入以及重新开放的步骤,然后在第一预设时长内缓冲队列被写满的次数大于等于预设次数时,确定需要对所述业务系统进行扩容,可以仅在暂停写入以及重新开放的步骤无法解除当前系统负载的繁忙状态的情况下,才确定需要进行扩容,相比于现有技术中,要么为应对峰值访问而部署大量计算资源,导致巨大资源浪费,要么在峰值访问时难以应对导致堆积大量业务请求无法处理,严重影响客户满意度,采用本发明的技术方案,可以有效判断扩容时机,从而在节省资源和满足峰值访问、降低系统的运维压力之间达到平衡。
进一步,增加处理设备,对所述业务系统的缓冲队列中的一部分业务请求进行处理,可以选择空闲资源进行处理,提高处理效率,进一步满足峰值访问、降低的系统的运维压力。
进一步,在增加所述处理设备并且所述缓冲队列中业务请求的数量降至零后,如果在第二预设时长内所述缓冲队列中的业务请求的数量持续为零,则对所述处理设备进行回收,可以在不再出现峰值访问时,通过及时回收资源,实现节省资源。
进一步,每当增加处理设备时,选择的处理设备与之前预设轮数内选择的处理设备不同,从而通过循环选择处理设备保证资源平均使用,避免某些资源使用频度过高导致硬件损耗加剧。
进一步,如果当前无可用资源,则对于所述缓冲队列中的一个或多个业务请求,仅对每个业务请求的一部分进行处理,从而可以在无法满足扩容需求时,通过减少对一个或多个业务请求的处理比例,实现对更多业务请求进行处理,进一步在节省资源和满足峰值访问之间达到平衡。
进一步,待写入所述缓冲队列的业务请求越多,所述第一预设时长越小;待写入所述缓冲队列的业务请求越多,所述预设次数越小,从而可以在由于时段、业务变更等原因出现远超平时状态的峰值时,通过设置较小的第一预设时长和预设次数,实现尽快确定需要扩容,而在不易出现远超平时状态的峰值时,通过设置较大的第一预设时长和预设次数,多观察一段时间再确定是否真正需要扩容,从而在判断扩容时机时,进一步在节省资源和满足峰值访问之间达到平衡。
附图说明
图1是本发明实施例中一种业务系统的扩容方法的流程图;
图2是本发明实施例中一种业务系统的缓冲队列的处理顺序示意图;
图3是本发明实施例中另一种业务系统的缓冲队列的处理顺序示意图;
图4是本发明实施例中另一种业务系统的扩容方法的流程图;
图5是本发明实施例中一种步进轮存储方式的存储顺序示意图;
图6是本发明实施例中一种业务系统的扩容装置的结构示意图。
具体实施方式
在现有技术中,根据时段、业务变更等原因在短时间内会出现系统负载远超平时状态的峰值,导致要么为了应对峰值访问而部署大量计算资源,导致巨大资源浪费;要么在峰值访问时难以应对导致堆积大量业务请求无法处理,严重影响客户满意度。
本发明的发明人经过研究发现,在现有技术中,通常会常规性的部署大量计算资源,以应对峰值访问的情况,然而在访问量较低时,大量计算资源中仅有少部分被使用,导致资源浪费,且随着业务系统的持续开发,可能存在峰值访问的访问量增长的情况,导致即使部署大量计算资源,仍然在峰值访问时堆积大量业务请求无法处理,难以满足客户需求。
在本发明实施例中,通过设置监控所述业务系统的缓冲队列中业务请求的数量,并在所述缓冲队列被写满时,设置暂停写入以及重新开放的步骤,然后在第一预设时长内缓冲队列被写满的次数大于等于预设次数时,确定需要对所述业务系统进行扩容,可以仅在暂停写入以及重新开放的步骤无法解除当前系统负载的繁忙状态的情况下,才确定需要进行扩容,相比于现有技术中,要么为应对峰值访问而部署大量计算资源,导致巨大资源浪费,要么在峰值访问时难以应对导致堆积大量业务请求无法处理,严重影响客户满意度,采用本发明的技术方案,可以有效判断扩容时机,从而在节省资源和满足峰值访问、降低系统的运维压力之间达到平衡。
为使本发明的上述目的、特征和有益效果能够更为明显易懂,下面结合附图对本发明的具体实施例做详细的说明。
参照图1,图1是本发明实施例中一种业务系统的扩容方法的流程图。所述业务系统的扩容方法可以包括步骤S11至步骤S13:
步骤S11:监控所述业务系统的缓冲队列中业务请求的数量;
步骤S12:每当所述缓冲队列被写满时,暂停向所述缓冲队列写入业务请求,然后当所述缓冲队列中的业务请求的数量降至预设比例时,重新开放向所述缓冲队列写入业务请求;
步骤S13:当在第一预设时长内所述缓冲队列被写满的次数大于等于预设次数时,确定需要对所述业务系统进行扩容。
在步骤S11的具体实施中,缓冲队列可以用于存储所述业务系统的系统负载状态为繁忙状态时的待处理业务请求。
具体地,业务系统接收业务请求,并根据当前的业务负载状态立即处理或暂时不予处理。
其中,业务系统的负载状态又可以称为服务状态,可以包括繁忙状态以及空闲状态。在一种非限制性的具体实施方式中,可以通过压力测试方法检测每秒查询数,并在当前负载超出业务系统的负载能力上限时,判断为业务系统的负载状态为繁忙状态,否则为空闲状态。
需要指出的是,所述缓冲队列可以隶属于业务系统提供的某一服务,也即可以为该服务的一个或多个服务节点建立缓冲队列,各个缓冲队列之间可以相互独立。可以理解的是,在单位时长内服务节点接收的业务请求越多,缓冲队列的容量可以越大。
在本发明实施例的一种具体实施方式中,当业务系统的业务负载状态为繁忙状态时,暂时不予处理,并且向缓冲队列写入所述业务请求,否则处理所述业务请求。
因此,缓冲队列中的待处理业务请求的数量可以用于指示业务系统的当前系统负载状态,当业务系统的负载状态为繁忙状态时,缓冲队列中的待处理业务请求的数量增加,当业务系统的负载状态为空闲状态时,缓冲队列中的待处理业务请求的数量减少或保持为零。通过监控所述业务系统的缓冲队列中业务请求的数量,可以及时确定业务系统是否存在扩容需求。
参照图2,图2是本发明实施例中一种业务系统的缓冲队列的处理顺序示意图。
当接收业务请求时,如果超出服务处理能力,例如业务系统的系统负载状态为繁忙状态,则将所述业务请求写入所述缓冲队列(又可以称为放入缓冲池中),当业务系统的系统负载状态为空闲状态(又可以称为服务空闲)时,可以如图2示出的箭头方向,按照先进先出原则继续处理缓冲队列中的业务请求。
继续参照图1,在步骤S12的具体实施中,每当所述缓冲队列被写满时,暂停向所述缓冲队列写入业务请求,然后当所述缓冲队列中的业务请求的数量降至预设比例时,重新开放向所述缓冲队列写入业务请求。
在本发明实施例中,通过暂停向所述缓冲队列写入业务请求,并在业务系统对缓冲队列中的一部分业务请求处理之后,再重新开放向所述缓冲队列写入业务请求,可以中断、减慢业务请求进入缓冲队列的速度,从而有效减轻缓冲队列的压力。
进一步地,作为一个非限制性的例子,所述预设比例可以选自:80%~95%,例如可以设置为90%,从而可以在缓冲队列中的业务请求数量下降后,判断为业务系统的负载状态转为空闲状态,及时重新开放缓冲队列,避免持续关闭缓冲队列导致资源浪费。
进一步地,所述的业务系统的扩容方法还可以包括:每当所述缓冲队列被写满时,将待写入所述缓冲队列的业务请求写入废弃池。
参照图3,图3是本发明实施例中另一种业务系统的缓冲队列的处理顺序示意图。
如图3示出的箭头方向,当所述缓冲队列被写满时,转而将新接收的业务请求写入废弃池。
具体地,当所述缓冲队列被写满时,表示缓冲队列达到容量上限时,为避免服务雪崩效应,可以触发熔断机制,将待写入所述缓冲队列的业务请求写入废弃池,拒绝对该业务请求进行服务,从而避免持续堆积等待进入缓冲队列的业务请求。
继续参照图1,在步骤S13的具体实施中,当在第一预设时长内所述缓冲队列被写满的次数大于等于预设次数时,确定需要对所述业务系统进行扩容。
需要指出的是,在统计被写满的次数的过程中,被写满的步骤指的是从未写满跳转至被写满的情况,此时记为次数增加一次,即使缓冲队列在一段时长内持续保持了被写满的状态,也并不额外增加被写满的次数。可以理解的是,在本发明实施例中,由于每当所述缓冲队列被写满时,暂停向所述缓冲队列写入业务请求,因此被写满的次数可以与暂停向所述缓冲队列写入业务请求的暂停次数一致。
进一步地,所述的业务系统的扩容方法可以满足以下一项或多项:待写入所述缓冲队列的业务请求越多,所述第一预设时长越小;待写入所述缓冲队列的业务请求越多,所述预设次数越小。
具体地,可以在不同的时间段设置各自的第一预设时长以及预设次数,例如根据历史经验数据,每天夜晚为峰值访问时段,则可以在这段时间设置较小的第一预设时长和预设次数,从而实现尽快确定需要扩容。
在本发明实施例中,待写入所述缓冲队列的业务请求越多,所述第一预设时长越小;待写入所述缓冲队列的业务请求越多,所述预设次数越小,从而可以在由于时段、业务变更等原因出现远超平时状态的峰值时,通过设置较小的第一预设时长和预设次数,实现尽快确定需要扩容,而在不易出现远超平时状态的峰值时,通过设置较大的第一预设时长和预设次数,多观察一段时间再确定是否真正需要扩容,从而在判断扩容时机时,进一步在节省资源和满足峰值访问之间达到平衡。
作为一个非限制性的例子,可以设置第一预设时长为1小时,预设次数为2次,也即在1小时内发生两次所述缓冲队列被写满(即发生两次暂停向所述缓冲队列写入业务请求),则可以确定需要对所述业务系统进行扩容。
在本发明实施例中,通过设置监控所述业务系统的缓冲队列中业务请求的数量,并在所述缓冲队列被写满时,设置暂停写入以及重新开放的步骤,然后在第一预设时长内缓冲队列被写满的次数大于等于预设次数时,确定需要对所述业务系统进行扩容,可以仅在暂停写入以及重新开放的步骤无法解除当前系统负载的繁忙状态的情况下,才确定需要进行扩容,相比于现有技术中,要么为应对峰值访问而部署大量计算资源,导致巨大资源浪费,要么在峰值访问时难以应对导致堆积大量业务请求无法处理,严重影响客户满意度,采用本发明的技术方案,可以有效判断扩容时机,从而在节省资源和满足峰值访问、降低系统的运维压力之间达到平衡。
参照图4,图4是本发明实施例中另一种业务系统的扩容方法的流程图。所述另一种业务系统的扩容方法可以包括步骤S401至步骤S414,以下对各个步骤进行说明。
在步骤S401中,业务系统接收业务请求。
其中,所述业务请求可以为各种实体业务,如采用软件实现的各种服务等,例如在终端上向用户显示购物页面等业务,可以理解的是,本发明实施例中对于具体的业务请求的类别不作限制。
在步骤S402中,判断业务系统的负载状态是否为繁忙,如果判断结果为是,则执行步骤S403,如果判断结果为否,则执行步骤S404。
在步骤S403中,向缓冲队列写入所述业务请求
在步骤S404中,处理所述业务请求。
在步骤S405中,判断缓冲队列是否被写满,如果判断结果为是,则可以执行步骤S406、步骤S408以及步骤S409中的一个或多个步骤,如果判断结果为否,则返回执行步骤S404。
在步骤S406中,暂停向所述缓冲队列写入业务请求。
在步骤S407中,当所述缓冲队列中的业务请求的数量降至预设比例时,重新开放向所述缓冲队列写入业务请求。
在步骤S408中,将待写入所述缓冲队列的业务请求写入废弃池。
在步骤S409中,判断在第一预设时长内所述缓冲队列被写满的次数是否大于等于预设次数,如果判断结果为是,则执行步骤S410,如果判断结果为否,则执行步骤S411。
在具体实施中,有关步骤S402至步骤S409的更多详细内容请参照前文以及图1中的步骤S11至步骤S13的描述进行执行,此处不再赘述。
在步骤S410中,确定需要对所述业务系统进行扩容。
在步骤S411中,确定暂时不需要对所述业务系统进行扩容。
可以理解的是,在真正实施对所述业务系统进行扩容之前,还可以包括:判断当前是否有可用资源的步骤。
具体地,如果当前有可用资源,则可以通过增加处理设备等方式,对所述业务系统的缓冲队列中的一部分业务请求进行处理;如果当前无可用资源,则可以执行后续警示操作。
进一步地,所述的业务系统的扩容方法还可以包括:如果当前无可用资源,则发送报警信息。
具体地,所述报警信息可以是声、光、震动等警示信息,用于引起用户注意,还可以是发送语音、文字、视频等信息,用于通知用户进行处理,在本发明实施例中,对于具体的报警信息的形式不做限制。
进一步地,如果当前无可用资源,则对于所述缓冲队列中的一个或多个业务请求,仅对每个业务请求的一部分进行处理。
作为一个非限制性的例子,以所述业务请求为在终端上向用户显示购物页面为例,为了节约资源,可以仅显示购物页面的一部分,例如不显示评价内容,仅显示商品详情和付款内容等。
在本发明实施例中,如果当前无可用资源,则对于所述缓冲队列中的一个或多个业务请求,仅对每个业务请求的一部分进行处理,从而可以在无法满足扩容需求时,通过减少对一个或多个业务请求的处理比例,实现对更多业务请求进行处理,进一步在节省资源和满足峰值访问之间达到平衡。
在步骤S412中,如果当前有可用资源,则增加处理设备。
具体地,所述的业务系统的扩容方法还可以包括:增加处理设备,对所述业务系统的缓冲队列中的一部分业务请求进行处理。
在本发明实施例中,通过增加处理设备,对所述业务系统的缓冲队列中的一部分业务请求进行处理,可以选择空闲资源进行处理,提高处理效率,进一步满足峰值访问、降低的系统的运维压力。
更进一步地,每当增加处理设备时,选择的处理设备与之前预设轮数内选择的处理设备不同。
参照图5,图5是本发明实施例中一种步进轮存储方式的存储顺序示意图。
具体地,可以通过步进轮(step wheel)的方式存储资源信息,例如按照处理设备的序号进行存储,每当增加处理设备时步进轮步进一次,从而可以指向下一个处理设备,由于步进轮为首尾连接的环形,可以在指向最末一个处理设备后自动转向首个处理设备,从而通过循环选择处理设备保证资源平均使用,避免某些资源使用频度过高导致硬件损耗加剧。
在本发明实施例中,每当增加处理设备时,选择的处理设备与之前预设轮数内选择的处理设备不同,从而通过循环选择处理设备保证资源平均使用,避免某些资源使用频度过高导致硬件损耗加剧。
继续参照图4,在步骤S413中,确定所述缓冲队列中业务请求的数量降至零。
在步骤S414中,如果在第二预设时长内所述缓冲队列中的业务请求的数量持续为零,则对所述处理设备进行回收。
其中,回收的步骤可以为将处理设备从工作状态转为非工作状态,或者转为执行其他业务。
具体地,所述业务系统的扩容方法还可以包括:在增加所述处理设备并且所述缓冲队列中业务请求的数量降至零后,如果在第二预设时长内所述缓冲队列中的业务请求的数量持续为零,则对所述处理设备进行回收。
在本发明实施例中,通过在增加所述处理设备并且所述缓冲队列中业务请求的数量降至零后,如果在第二预设时长内所述缓冲队列中的业务请求的数量持续为零,则对所述处理设备进行回收,可以在不再出现峰值访问时,通过及时回收资源,实现节省资源。
其中,所述第二预设时长可以视为观察期,可以根据待写入所述缓冲队列的业务请求确定。
作为一个非限制性的例子,可以设置待写入所述缓冲队列的业务请求越多,所述第二预设时长越大;待写入所述缓冲队列的业务请求越少,所述第二预设时长越小。
具体地,可以在不同的时间段设置各自的第二预设时长,例如根据历史经验数据,每天夜晚为峰值访问时段,则可以在这段时间设置较大的第二预设时长,从而多观察一段时间后,再决定是否对所述处理设备进行回收。
参照图6,图6是本发明实施例中一种业务系统的扩容装置的结构示意图。所述业务系统的扩容装置可以包括:
监控模块61,用于监控所述业务系统的缓冲队列中业务请求的数量;
暂停模块62,用于每当所述缓冲队列被写满时,暂停向所述缓冲队列写入业务请求,然后当所述缓冲队列中的剩余业务请求的数量降至预设比例时,重新开放向所述缓冲队列写入业务请求;
确定扩容模块63,用于当在第一预设时长内所述缓冲队列被写满的次数大于等于预设次数时,确定需要对所述业务系统进行扩容。
关于该业务系统的扩容装置的原理、具体实现和有益效果请参照前文所述的关于业务系统的扩容方法的相关描述,此处不再赘述。
本发明实施例还提供了一种可读存储介质,其上存储有计算机程序,所述计算机程序被处理器运行时执行上述方法的步骤。所述可读存储介质可以是计算机可读存储介质,例如可以包括非挥发性存储器(non-volatile)或者非瞬态(non-transitory)存储器,还可以包括光盘、机械硬盘、固态硬盘等。
本发明实施例还提供了一种终端,包括存储器和处理器,所述存储器上存储有能够在所述处理器上运行的计算机程序,所述处理器运行所述计算机程序时执行上述方法的步骤。所述终端包括但不限于手机、计算机、平板电脑、服务器、云平台等终端设备。
应理解,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,表示前后关联对象是一种“或”的关系。
本申请实施例中出现的“多个”是指两个或两个以上。
本申请实施例中出现的第一、第二等描述,仅作示意与区分描述对象之用,没有次序之分,也不表示本申请实施例中对设备个数的特别限定,不能构成对本申请实施例的任何限制。
虽然本发明披露如上,但本发明并非限定于此。任何本领域技术人员,在不脱离本发明的精神和范围内,均可作各种更动与修改,因此本发明的保护范围应当以权利要求所限定的范围为准。
Claims (12)
1.一种业务系统的扩容方法,其特征在于,包括:
监控所述业务系统的缓冲队列中业务请求的数量;
每当所述缓冲队列被写满时,暂停向所述缓冲队列写入业务请求,然后当所述缓冲队列中的业务请求的数量降至预设比例时,重新开放向所述缓冲队列写入业务请求;
当在第一预设时长内所述缓冲队列被写满的次数大于等于预设次数时,确定需要对所述业务系统进行扩容。
2.根据权利要求1所述的业务系统的扩容方法,其特征在于,还包括:
增加处理设备,对所述业务系统的缓冲队列中的一部分业务请求进行处理。
3.根据权利要求2所述的业务系统的扩容方法,其特征在于,还包括:
在增加所述处理设备并且所述缓冲队列中业务请求的数量降至零后,如果在第二预设时长内所述缓冲队列中的业务请求的数量持续为零,则对所述处理设备进行回收。
4.根据权利要求2所述的业务系统的扩容方法,其特征在于,每当增加处理设备时,选择的处理设备与之前预设轮数内选择的处理设备不同。
5.根据权利要求1所述的业务系统的扩容方法,其特征在于,还包括:
每当所述缓冲队列被写满时,将待写入所述缓冲队列的业务请求写入废弃池。
6.根据权利要求1所述的业务系统的扩容方法,其特征在于,还包括:
如果当前无可用资源,则发送报警信息。
7.根据权利要求1所述的业务系统的扩容方法,其特征在于,还包括:
如果当前无可用资源,则对于所述缓冲队列中的一个或多个业务请求,仅对每个业务请求的一部分进行处理。
8.根据权利要求1所述的业务系统的扩容方法,其特征在于,满足以下一项或多项:
待写入所述缓冲队列的业务请求越多,所述第一预设时长越小;待写入所述缓冲队列的业务请求越多,所述预设次数越小。
9.根据权利要求1所述的业务系统的扩容方法,其特征在于,所述预设比例选自:80%~95%。
10.一种业务系统的扩容装置,其特征在于,包括:
监控模块,用于监控所述业务系统的缓冲队列中业务请求的数量;
暂停模块,用于每当所述缓冲队列被写满时,暂停向所述缓冲队列写入业务请求,然后当所述缓冲队列中的剩余业务请求的数量降至预设比例时,重新开放向所述缓冲队列写入业务请求;
确定扩容模块,用于当在第一预设时长内所述缓冲队列被写满的次数大于等于预设次数时,确定需要对所述业务系统进行扩容。
11.一种可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器运行时执行权利要求1至9任一项所述业务系统的扩容方法的步骤。
12.一种终端,包括存储器和处理器,所述存储器上存储有能够在所述处理器上运行的计算机程序,其特征在于,所述处理器运行所述计算机程序时执行权利要求1至9任一项所述业务系统的扩容方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110875840.2A CN113806068B (zh) | 2021-07-30 | 2021-07-30 | 业务系统的扩容方法及装置、可读存储介质、终端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110875840.2A CN113806068B (zh) | 2021-07-30 | 2021-07-30 | 业务系统的扩容方法及装置、可读存储介质、终端 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113806068A CN113806068A (zh) | 2021-12-17 |
CN113806068B true CN113806068B (zh) | 2023-12-12 |
Family
ID=78942726
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110875840.2A Active CN113806068B (zh) | 2021-07-30 | 2021-07-30 | 业务系统的扩容方法及装置、可读存储介质、终端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113806068B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105744001A (zh) * | 2016-04-11 | 2016-07-06 | 青岛海信传媒网络技术有限公司 | 分布式缓存系统扩容方法、数据访问方法及装置和系统 |
CN105933391A (zh) * | 2016-04-11 | 2016-09-07 | 青岛海信传媒网络技术有限公司 | 一种节点扩容方法、装置及系统 |
CN110166282A (zh) * | 2019-04-16 | 2019-08-23 | 苏宁易购集团股份有限公司 | 资源分配方法、装置、计算机设备和存储介质 |
CN110569123A (zh) * | 2019-07-31 | 2019-12-13 | 苏宁云计算有限公司 | 线程分配方法、装置、计算机设备和存储介质 |
CN112398945A (zh) * | 2020-11-16 | 2021-02-23 | 中国工商银行股份有限公司 | 一种基于背压的业务处理方法及装置 |
US10944683B1 (en) * | 2017-05-25 | 2021-03-09 | Amazon Technologies, Inc. | Hybrid queue system for request throttling |
CN112929296A (zh) * | 2019-12-06 | 2021-06-08 | 中盈优创资讯科技有限公司 | 基于分布式队列的高并发业务开通方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7912951B2 (en) * | 2008-10-28 | 2011-03-22 | Vmware, Inc. | Quality of service management |
-
2021
- 2021-07-30 CN CN202110875840.2A patent/CN113806068B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105744001A (zh) * | 2016-04-11 | 2016-07-06 | 青岛海信传媒网络技术有限公司 | 分布式缓存系统扩容方法、数据访问方法及装置和系统 |
CN105933391A (zh) * | 2016-04-11 | 2016-09-07 | 青岛海信传媒网络技术有限公司 | 一种节点扩容方法、装置及系统 |
US10944683B1 (en) * | 2017-05-25 | 2021-03-09 | Amazon Technologies, Inc. | Hybrid queue system for request throttling |
CN110166282A (zh) * | 2019-04-16 | 2019-08-23 | 苏宁易购集团股份有限公司 | 资源分配方法、装置、计算机设备和存储介质 |
CN110569123A (zh) * | 2019-07-31 | 2019-12-13 | 苏宁云计算有限公司 | 线程分配方法、装置、计算机设备和存储介质 |
CN112929296A (zh) * | 2019-12-06 | 2021-06-08 | 中盈优创资讯科技有限公司 | 基于分布式队列的高并发业务开通方法及装置 |
CN112398945A (zh) * | 2020-11-16 | 2021-02-23 | 中国工商银行股份有限公司 | 一种基于背压的业务处理方法及装置 |
Non-Patent Citations (1)
Title |
---|
基于微服务的应用云平台弹性伸缩技术的研究与实现;王明明;中国优秀硕士学位论文全文数据库 (信息科技辑);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN113806068A (zh) | 2021-12-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109614377B (zh) | 分布式文件系统的文件删除方法、装置、设备及存储介质 | |
JP2596718B2 (ja) | ネットワーク通信バッファを管理する方法 | |
CN102594691A (zh) | 一种处理报文的方法及装置 | |
JP4729611B2 (ja) | イベントキュー管理装置及びイベントキュー管理方法 | |
CN107509119B (zh) | 一种监控报警方法与装置 | |
CN112650575B (zh) | 资源调度方法、装置和云端服务系统 | |
CN115576534B (zh) | 原子服务的编排方法、装置、电子设备及存储介质 | |
CN112579263A (zh) | 任务执行方法及装置、存储介质及电子设备 | |
WO2023138058A1 (zh) | 一种告警事件的处理方法、装置及计算机可读存储介质 | |
CN111858067A (zh) | 一种数据处理方法及装置 | |
CN113014608B (zh) | 一种流量分发控制方法、装置、电子设备及存储介质 | |
CN113806068B (zh) | 业务系统的扩容方法及装置、可读存储介质、终端 | |
CN106599323B (zh) | 在分布式文件系统中实现分布式管道的方法和装置 | |
WO2022111733A1 (zh) | 消息处理方法、装置及电子设备 | |
CN114448989A (zh) | 调整消息分发的方法、装置、电子设备、存储介质及产品 | |
CN107861878A (zh) | Java应用程序性能问题定位的方法、装置和设备 | |
CN114827049A (zh) | 一种基于kafka的堆积数据消费方法、终端设备及存储介质 | |
CN114020529A (zh) | 一种流表数据的备份方法、装置、网络设备和存储介质 | |
CN110659132B (zh) | 请求处理的优化方法及计算机可读存储介质 | |
CN115904165B (zh) | 运输节点图展示方法、装置、电子设备和计算机可读介质 | |
CN112559183B (zh) | 计算资源管理方法、装置、电子设备及存储介质 | |
CN114785714A (zh) | 一种报文传输时延检测方法、存储介质及设备 | |
CN111078405B (zh) | 内存分配方法、装置、存储介质及电子设备 | |
CN110187957B (zh) | 一种下载任务的排队方法、装置及电子设备 | |
CN112988417A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |