CN103309731A - 处理系统 - Google Patents
处理系统 Download PDFInfo
- Publication number
- CN103309731A CN103309731A CN2012103802293A CN201210380229A CN103309731A CN 103309731 A CN103309731 A CN 103309731A CN 2012103802293 A CN2012103802293 A CN 2012103802293A CN 201210380229 A CN201210380229 A CN 201210380229A CN 103309731 A CN103309731 A CN 103309731A
- Authority
- CN
- China
- Prior art keywords
- processing
- job
- group
- processor
- queue
- 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.)
- Granted
Links
- 238000012545 processing Methods 0.000 title claims abstract description 446
- 238000012544 monitoring process Methods 0.000 claims abstract description 56
- 239000000725 suspension Substances 0.000 claims abstract description 12
- 238000000034 method Methods 0.000 claims description 50
- 230000008569 process Effects 0.000 claims description 34
- 238000011084 recovery Methods 0.000 claims description 29
- 230000004044 response Effects 0.000 claims description 26
- 238000004064 recycling Methods 0.000 claims description 8
- 238000007726 management method Methods 0.000 description 45
- 230000006870 function Effects 0.000 description 9
- 238000012790 confirmation Methods 0.000 description 8
- 238000012806 monitoring device Methods 0.000 description 6
- 230000007423 decrease Effects 0.000 description 5
- 230000002452 interceptive effect Effects 0.000 description 5
- 230000007246 mechanism Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000003247 decreasing effect Effects 0.000 description 3
- 238000012217 deletion Methods 0.000 description 2
- 230000037430 deletion Effects 0.000 description 2
- 230000010365 information processing Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000013468 resource allocation Methods 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
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/5061—Partitioning or combining of resources
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5011—Pool
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Retry When Errors Occur (AREA)
- Multi Processors (AREA)
- Hardware Redundancy (AREA)
- Computer And Data Communications (AREA)
Abstract
一种处理系统包括处理请求队列,其对应于处理组并且额外存储寻址到该处理组的到达的处理请求;至少一个处理器,其属于该处理组,并且在被允许接收新的处理请求时从处理请求队列取回处理请求,并处理取回的处理请求;和监控单元,其监控处理组的处理负荷,并且在通过监控确定该处理组的处理负荷变得低于预定收缩阈值时,将组收缩指令发布给处理组。如果已经发布了组收缩指令,则处理组中的预定数量的处理器成为挂起目标。作为挂起目标的处理器停止从处理组的处理请求队列取回新的处理请求,在完成所有已取回的处理请求的处理后停止操作,并且随后从处理组中排除。
Description
技术领域
本发明涉及一种处理系统。
背景技术
当今提供云计算服务的系统得到了日益广泛的应用。在这种系统中,用户被允许使用支付系统形式的服务提供商所有的计算资源。这种服务通常包括所谓的自动缩放功能,即适当地增加或减少用户使用的计算资源。在例如称作亚马逊弹性计算云(EC2)的云服务中,将称作EC2实例的虚拟机分配给用户。如“自动缩放”(2012年1月10日搜索的互联网在线http://aws.amazon.com/jp/autoscaling/)中所述,响应于处理负荷自动增加或减少实例的数量。增加实例的数量通常称作“向外扩展(scale-out)”,减少实例的数量通常称作“向内扩展(scale-in)”。根据所使用资源量来确定服务费。如果处理负荷降低,则自动减少将使用的资源量,从而节省服务费。
日本未审查专利申请公开第2002-342298号描述了一种在客户端和服务器之间分布负载平衡功能的信息处理系统,以及使用在客户端和服务器之间分布的负载平衡功能来自主地平衡服务器之间的负载平衡的并行负载平衡器方法。该信息处理系统包括具有客户负载平衡器的客户端,以及具有服务器负载平衡器的服务器。客户端负载平衡器将会话建立请求发送至初始指定的服务器,并根据初始指定的服务器对于会话建立请求的应答来选择执行任务的服务器。服务器负载平衡器在从客户端负载平衡器接收到会话建立请求时,对多个服务器的会话数量进行比较,将对会话建立请求的应答发送至客户端负载平衡器,并管理会话的数量。
日本未审查专利申请公开第2009-265778号描述了整体管理虚拟机的资源分配的虚拟服务器。该虚拟服务器包括并行布置的多个虚拟机以及虚拟机监控器。虚拟服务器还包括测量每个虚拟机的负载的负载测量单元,确定用于测量负载的资源量的资源量确定单元,以及将确定的资源量分配给虚拟机的资源分配单元。
日本未审查专利申请公开第2004-192449号描述一种在网页型客户端-服务器系统中不使用负载平衡器而分布网页服务器的负载的方法。根据这种方法,在每个网页服务器中存储预定的优先级顺序数据列表,并监控每个网页服务器的操作状态,即该网页服务器是在操作还是挂起。如果从客户端计算机接收到请求,则将请求分配给多个操作的服务器中在优先级顺序数据列表中写入了最高优先级的网页服务器。如果分配了请求的网页服务器的负载落在允许负载之内,该网页服务器就响应于该请求执行任务。如果网页服务器的负载高于允许负载,则该网页服务器将该请求转送至多个操作的网页服务器中具有次高优先级的网页服务器。
日本未审查专利申请公开第2008-027189号描述了不将错误发送回请求源而继续处理的事务处理方法。根据这种方法,由请求代理设备接收的请求信息被存储在请求信息管理设备上,并在请求代理设备的控制下将请求发送至冗余服务器。当服务器中出现故障时,根据存储的请求信息通过另一个服务器接替并继续事务的处理。如果结合负载平衡器执行了向内扩展,则该方法允许在出现故障时以相同的机制通过另一个服务器接替处理。
日本未审查专利申请公开第10-326201号描述了一种系统,其中响应于第一计算机中的故障,第二计算机自动重启,而不重复开始登记在第一计算机上的作业。在该系统中,公共盘装置是具有故障检测器和连接切换单元的外部存储装置。公共盘装置连接至多个计算机中的每一个,但连接切换单元在任何给定时间仅允许连接至一个计算机。故障检测器检测执行批量处理的计算机上的故障,并控制连接切换单元的连接。在正常操作中,公共盘装置存储作业信息以及当前操作计算机的作业执行结果。当出现故障时,使得公共盘装置连接至备用计算机。利用作业重启单元组重启备用服务器来执行自动重启。
在分布式处理中,可以在多个处理器中处理来自用户的多个处理请求。当处理负荷降低时,可以执行向内扩展,即部分挂起这些处理器。如果正在处理处理请求的处理器被挂起,则由于处理请求未被处理而出现问题。如果使用监控设备来监控每个处理器的状态,则监控设备从多个处理器中检测已完成其处理的处理器,然后使检测到的该处理器挂起。从而避免了上述问题。不过,设置监控每个处理器状态的监控设备会导致系统成本上升,并且增加在监控设备和每个处理器之间进行通信的网络负荷。
发明内容
本发明的一个目标是在执行向内扩展时允许完成了处理请求的处理的处理器挂起,而不设置对每个处理器的状态进行监控的监控设备。
根据本发明的第一方面,提供了一种处理系统。该处理系统包括对应于处理组并且额外存储寻址到该处理组的到达的处理请求的处理请求队列;至少一个处理器,其属于该处理组,并且在被允许接收新的处理请求时,从处理请求队列取回处理请求并且处理取回的处理请求;和监控单元,其监控处理组的处理负荷,并且在通过监控确定该处理组的处理负荷变得低于预定收缩阈值时,将组收缩指令发布(issue)给处理组。如果已经发布了组收缩指令,则处理组中的预定数量的处理器成为挂起目标,作为挂起目标的处理器停止从处理组的处理请求队列取回新的处理请求,在完成所有已取回的处理请求的处理后停止操作,并且随后从处理组中排除。
根据本发明的第二方面,处理系统还包括与处理组相关联的回收队列。如果在取回的处理请求中存在处于恢复等待状态中等待从挂起恢复的处理请求,则成为挂起目标的处理器将处于恢复等待状态的处理请求添加至回收队列,以从取回的处理请求中去除处于恢复等待状态的处理请求。如果该处理器变为允许取回新的处理请求,则处理器优先从回收队列取回处理请求,如果回收队列中不存在可用的处理请求,则处理器从处理请求队列中取回处理请求。
根据本发明的第三方面,处理系统还包括中间结果存储器,其存储处在处理请求的中间处理阶段的处理请求的中间处理结果。已成为挂起目标的处理器使得中间结果存储器以使得中间处理结果与添加至回收队列的处理请求相关联的方式,存储处于恢复等待状态的处理请求的一直到恢复等待状态阶段的中间处理结果。在从回收队列取回处理请求时,在该处理请求的处理已经完成到恢复等待状态阶段的条件下,处理器使用中间处理存储器中与处理请求相关联地存储的中间处理结果来恢复该处理。
根据本发明的第四方面,在通过监控确定了处理组的处理负荷变得高于预定扩张阈值时,监控单元将组扩张指令发布给处理组中的每个处理器。如果处理器是挂起目标但尚未挂起,则处理器响应于组扩张指令的接收从挂起目标进行转变,并恢复从处理请求队列取回新的处理请求。
根据本发明的第五方面,处理系统还包括与处理组相关联的收缩指令队列。监控单元将要发布给处理组的组收缩指令添加到与处理组相关联的收缩指令队列。仅当处理负荷低于为处理负荷预定的挂起目标阈值时,每个处理器才执行从收缩指令队列取回组收缩指令的取回操作,并且如果已经通过取回操作取回了组收缩指令,则处理器成为挂起目标。
根据本发明的第一方面,在不使用监控设备监控每个处理器状态的情况下,在执行向内扩展时使得已经完成了处理请求的处理的处理器挂起。
根据本发明的第二方面,与在处于处理请求的处理完成时间未知的恢复等待状态的处理请求的处理完成之后而挂起已成为挂起目标的处理器的情况相比,能够更快地执行处理组的处理收缩(删除处理组中的处理器)。
根据本发明的第三方面,与从由成为挂起目标的处理器添加到回收队列的处理请求的处理开始执行该处理的情况相比,能够通过其他处理器更快地执行该处理请求。
根据本发明的第四方面,当处理组的吞吐量(处理器数量)要增加时,处理系统通过启动新的处理器来增加吞吐量。
根据本发明的第五方面,与处理组中的全部处理器都取回组收缩指令的情况相比,能够更快地使处理组收缩。
附图说明
下面将基于附图详细描述本发明的示例性实施例,其中:
图1例示了一个示例性实施例的处理系统的构造;
图2是例示了监控单元的处理示例的流程图;
图3是例示了作业处理器的作业取回处理示例的流程图;
图4是图3流程图的继续;
图5是例示了作业处理器的向内扩展处理的示例的流程图;
图6是例示了作业处理器在向内扩展指令的接收启用状态和接收禁用状态之间进行切换的处理的流程图;
图7是例示了作业处理器的向外扩展处理的示例的流程图;
图8例示了没有等待恢复的作业并且挂起其操作以便向内扩展的作业处理器的处理流程示例;
图9例示了具有等待恢复的作业并且挂起其操作以便向内扩展的作业处理器的处理流程示例;和
图10例示了执行向外扩展的第一阶段和第二阶段的处理流程的示例。
具体实施方式
图1例示了本发明一个示例性实施例的处理系统。下文中的词语“向内扩展”是指处理组110的规模收缩,即降低属于处理组110的作业处理器100的数量的处理。词语“向外扩展”是指处理组110的规模扩张,即增加属于处理组110的作业处理器100的数量的处理。
图1的处理系统通过诸如互联网的网络从客户端设备(未示出)接收处理请求,并在多个作业处理器100中执行响应于该处理请求的分布式处理。每个作业处理器100可以是作为硬件结构或虚拟机(即作业处理器100的类的实例)的单个计算机。每个作业处理器100还可以是在单个虚拟机上执行处理来为多个客户提供服务的系统中针对每个客户的处理器。多个作业处理器100通常在作为云计算系统的网络上分布。或者,多个作业处理器100可以在单个计算机中实现。响应于处理请求的处理,即通过系统中的作业处理器100执行的处理(或者通过多个作业处理器100并行执行的处理)不限于任何特定处理。例如,响应于处理请求执行的处理包括对通过作为客户端设备的数字多功能设备(一部分用作光学复印机、一部分用作扫描仪、以及一部分用作打印机的多功能设备)扫描的文档图像执行光学字符读取操作,提取文档中每个元素的数据,然后将数据存储到数据库中。处理请求包括按照预定格式描述了处理请求内容的处理过程信息。通过处理过程信息描述的处理是包括分别由单个命令代表的至少一个处理单元(处理单元称作“任务”)的序列的处理流程。处理请求还可以包括成为由处理过程信息定义的处理的目标的目标数据。该目标数据可以包括任何数据,如图像数据和通过字处理器或者通过诸如表格软件的应用程序创建的文档数据。处理请求还可以包括在网络上涉及数据实体的存储位置的参考信息,而不是数据实体。发送处理请求的客户端设备不限于多功能设备。客户端设备可以包括其他类型的具有信息处理功能的设备,如个人计算机和传真机。
处理系统包括多个作业处理器100,并为用户提供作业处理器100中的一些。文中的词语“用户”不仅表示个人,还可以是个人的组(如公司)。处理系统将包含至少一个作业处理器100的处理组110分配给每个单个用户。处理组110中的多个作业处理器100以分布式方式处理处理请求。每个作业处理器100都识别自身属于哪个处理组110(例如,在启动时,作业处理器100被告知所属处理组的标识(ID))。作业处理器100从其处理组110取回作业并执行作业。分配给用户的处理组110的数量不限于一个。一个处理组110可以由多个用户共享。可以执行多租户处理。在多租户处理中,可以排他地执行多个用户的处理。
从客户端设备发送至处理系统的处理请求被作业输入单元120接收。根据接收到的处理请求中包含的处理过程信息,作业输入单元120生成在系统中对处理请求所针对的处理进行管理的作业(该作业代表响应于处理请求的处理)。作业输入单元120在作业管理单元150和队列管理单元130上登记所生成的作业。在系统中唯一识别该作业的作业ID(标识符)附至所生成的作业。作业管理单元150将包含在处理请求中的处理过程信息以及目标数据与作业ID相关联的进行存储。在每个作业处理器100处理作业时使用这些信息。随后作业管理单元150从作业处理器100等取回每个作业的执行状态信息(如作业未执行,作业正在处理中,作业已完成,和出现错误),并与作业ID相关联地管理这些信息。在这种情况下,在被请求时,将作业执行状态的信息提供至客户端设备。作业管理单元150可以包括后文将详细说明的中间处理结果存储器152。由于向内扩展而变成挂起目标的作业处理器100可以向作业管理单元150返回作业的中间阶段的处理结果数据(下文称作中间处理结果数据)。然后中间处理结果存储器152将中间处理结果数据与作业ID相关联地存储。
队列管理单元130具有队列结构。该队列结构用于响应于处理系统接收的处理请求以先入先出方法管理作业组的执行次序。处理系统包括队列结构中的三个队列,即作业队列142、回收队列144和向内扩展队列146。
作业队列142保留从作业输入单元120输入的作业。输入的作业添加至作业队列142的尾部,并以先入先出的方法从作业队列142的头部取回作业,并将取回的作业提供至作业处理器100。
回收队列144保留从成为挂起目标以执行后文将详细说明的向内扩展处理的作业处理器100返回的未完成作业。将输入的作业添加至回收队列144的尾部,以先入先出方法从回收队列144取回作业,然后将取回的作业提供至作业处理器100。
在作业队列142和回收队列144之间建立优先级关系。在该处理系统中,对回收队列144中的作业的处理比对作业队列142中的作业的处理具有更高的优先级。具体来说,当回收队列144中存在可用作业时,作业处理器100从回收队列144取回作业。然后作业处理器100仅在回收队列144变空时才开始从作业队列142取回作业。
在这里的示例中,仅在作业队列142和回收队列144中存储作业ID,作业管理单元150存储每个作业的数据实体和管理信息。仅出于示例的目的描述了这种构造。
作业队列142和回收队列144是保留作业的队列,而向内扩展队列146是保留向内扩展指令(严格来说是指示要执行的向内扩展操作的预定指令信息)的队列。在处理系统中,如果出现向内扩展操作的必要性,则预定数量的向内扩展指令(该数量可以等于在单个向内扩展操作中要挂起的作业处理器的数量,例如“1”),并且向内扩展指令被添加到向内扩展队列146中。作业处理器100自主从向内扩展队列146取回向内扩展指令。只有已经接收到了向内扩展指令的作业处理器成为用于向内扩展的挂起目标。
处理系统除了三个队列142、144和146以外,还包括向外扩展主题(topic)148。向外扩展主题148是主题形式的消息传送机制。例如在Java(注册商标)消息服务(JMS)中,“主题”是将消息传送(多点传输)至多个接收方的机制,而“队列”是将消息传送至单个接收方的机制。如果出现向外扩展的必要性,则向外扩展主题148接收向外扩展指令。输入向外扩展主题148的向外扩展指令被对应于向外扩展主题148的处理组110中的所有作业处理器100取回。如下文详细描述的,处理系统不仅包括从队列取回作业并执行作业的活动作业处理器100(下文中称作处于正常操作状态的作业处理器100),还包括成为用于向内扩展的挂起目标、停止取回作业、但仍继续存在并执行已经取回的作业的准备退出的作业处理器100(下文中称作处于“准备挂起”状态的作业处理器100)。向外扩展主题148用于将处于准备挂起状态的作业处理器100返回正常操作状态。
处理系统执行使处于准备挂起状态的作业处理器100返回正常操作状态的第一阶段向外扩展,以及生成将属于处理组110的作业处理器100的第二阶段向外扩展。第二阶段向外扩展是标准意义上的向外扩展。下文对这两个阶段的向外扩展进行详细说明。
处理系统中的队列管理单元130针对每个处理组110包括含有作业队列142、回收队列144、向内扩展队列146和向外扩展主题148的队列结构140。每个作业处理器100从与其处理组110对应的队列结构140接收作业、向内扩展指令和向外扩展指令。
在处理系统中,在每个处理组110的作业队列142中保留的作业数量通过作业管理单元150来管理,并且响应于将作业添加至队列或者从队列取回作业而更新该数量。可以利用队列管理单元130代替作业管理单元150来管理作业数量。
处理系统具有根据处理组110的处理负荷自动调节属于处理组110的作业处理器100的数量的自动缩放功能。如果处理系统中的处理组110的处理负荷增大,则响应于负荷的增大将新的作业处理器100添加至处理组110中。如果处理组110的处理负荷减小,则响应于负荷减小来减少作业处理器100。这种配置使得只有最小数量的作业处理器100活动,因此处理组110的响应时间(从发出处理请求到获得响应于处理请求的结果的时间段)维持为大致恒定。如果活动的作业处理器100的数量要反映在服务收费上,则期望保持能够保证服务质量的最小数量的活动作业处理器100。
处理系统的自动缩放功能是通过监控单元160和自动缩放器170的中央控制以及每个作业处理器100响应于向内扩展指令和向外扩展指令的自主操作来实现的。
监控单元160针对每个处理组110监控作为处理组110的向外扩展(增加作业处理器100的数量)或向内扩展(减少作业处理器100的数量)的判定标准的信息。响应于监控结果,监控单元160确定对处理组110进行向外扩展或向内扩展。作为判定标准的信息是处理组110的处理负荷量。监控单元160响应于判定结果将向内扩展指令或向外扩展指令发送至队列管理单元130。图2例示了监控单元160的详细处理。监控单元160针对存在于处理系统中的每个处理组110执行图2的处理(换句话说,监控单元160为各个处理组110执行排他操作)。
在图2的处理中,监控单元160以待机(on standby)状态等待由预定规则确定的监控定时,诸如每预定时间间隔的定时(S10)。监控定时到来时,监控单元160从作业管理单元150取回处理组110的处理负荷的指标值,来作为监控目标(S12)。例如,该指标值是处理组110的作业队列142中存在的作业的数量。该作业数量越大,则未完成的作业数量越大。要执行的作业数量相对处理组110的当前吞吐量较大。通过处理组110执行新的作业会花费时间,使处理负荷较高。(原则上,作业处理器100的数量越大,则处理组110的吞吐量越高)。在该示例中,监控单元160从作业管理单元150取回对应于处理组110的作业队列142中的作业计数来作为监控目标。
监控单元160将取回的指标值与预定的向内扩展阈值进行比较(确定指标值是否小于图2中的向内扩展阈值)(S14)。如果处理负荷的指标值低于向内扩展阈值(S14中的是),则监控单元160确定作为监控目标的处理组110要被向内扩展。监控单元160将预定数量(如1个)的向内扩展指令添加至对应于处理组110的向内扩展队列146(S16)。正在访问的处理组110中的作业处理器100以先入先出方式从先头的向内扩展指令开始,从向内扩展队列146取回向内扩展指令。
如果处理负荷的指标值等于或高于向内扩展阈值(S14中的否),则监控单元160将指标值与预定的第一向外扩展阈值进行比较(确定指标值是否大于图2中的第一向外扩展阈值)(S18)。第一向外扩展阈值是大于等于向内扩展阈值的值。如果处理负荷的指标值大于第一向外扩展阈值(S18中的是),则监控单元160确定作为监控目标的处理组110要被向外扩展。监控单元160将向外扩展指令发送至与处理组110对应的向外扩展主题148(S20)。通过向外扩展主题148接收的向外扩展指令被属于处理组110的全部作业处理器100接收。(下面参照图7对作业处理器100的向外扩展相关处理进行说明)。
使用向外扩展主题148执行的向外扩展处理是前述的第一阶段向外扩展,即将作业处理器100从准备挂起状态恢复成正常操作状态的处理。如果不存在处于准备挂起状态的作业处理器100,则第一阶段向外扩展可能是不够的(换句话说,不会产生降低处理负荷的效果)。在这种情况下,执行第二阶段向外扩展(即标准意义上的向外扩展)。具体来说,生成新的作业处理器100并将其分配给作为向外扩展目标的处理组110。
在图2的处理中,监控单元160将作为监控目标的处理组110的处理负荷的指标值与大于第一向外扩展阈值的第二向外扩展阈值进行比较(S22)。如果处理组110的处理负荷变得大于第一向外扩展阈值,则执行(尝试)第一阶段向外扩展。即使所有处于准备挂起状态的作业处理器100都恢复成正常操作状态(作业取回),高处理负荷的问题也可能得不到解决。在这种情况下,处理负荷可能高于第二向外扩展阈值,S22中的判定结果可能为是。如果S22中的判定结果为是,则监控单元160请求自动缩放器170对处理组110执行标准向外扩展(即将预定数量的新的作业处理器100添加至处理组110)(S24)。自动缩放器170将生成指令发布至管理一组作业处理器100的系统(例如管理虚拟机组的服务器),以指示该系统生成作业处理器。由此,生成新的作业处理器100作为虚拟机。生成的作业处理器100被告知作为向外扩展目标的处理组110的ID(作为生成指令的自变量(argument))。所生成的作业处理器100属于该处理组110。在访问队列管理单元130时,该作业处理器100通过将被告知的其处理组110的ID呈现给队列管理单元130来接收寻址到其处理组110的作业以及各种指令。通过自动缩放器170执行的第二阶段向外扩展处理与现有技术中通过自动缩放器执行的向外扩展处理相同。
如果处理组110的处理负荷大于等于向内扩展阈值并且小于等于第一向外扩展阈值,则对处理组110既不执行向内扩展处理也不执行向外扩展处理。
在处理系统中,响应于来自监控单元160的向内扩展指令执行向内扩展处理。自动缩放器170与向内扩展处理无关。可选地,现有技术中的自动缩放器170可以具有监控单元160的功能。
在前面的讨论中,作业队列142中的作业数量是处理负荷的指标值。可替代地,将作业队列142和回收队列144中的作业数量之和用作处理负荷的指标值。此外,可以通过不仅考虑作业队列142(和回收队列144)中的作业数量,还考虑通过作业管理单元150管理的与处理组110有关的其他信息来确定处理组110的处理负荷的指标值。
下面对作业处理器100的操作进行说明。作业处理器100的操作包括取回和执行作业的基本操作、取回向内扩展指令并响应于向内扩展指令进行操作的操作、和取回向外扩展指令并响应于向外扩展指令进行操作的操作。下面按顺序对这些操作进行说明。
参照图3和图4的处理对基本操作进行说明。在图3的处理中,作业处理器100接收作业。在图4的处理中,作业处理器100执行所接收的作业。通常(但不必须),作业处理器100运行多个线程或进理,以并行执行多个作业。每当使作业处理器100能够接收新的作业时(S30),作业处理器100就从对应于作业处理器100所属的处理组110的队列结构140中取回新的作业。例如,如果当前并行处理的作业的数量小于作业处理器100能够并行执行的作业的作业量上限,则作业处理器100在S30判定可以接收新的作业。在另一个示例中,作业处理器100包括一个队列,其接收从队列结构140取回的作业,并按顺序连续从队列中取回作业并执行所取回的作业。如果队列中的作业数量小于队列能够保留的作业的作业量上限,则可以接收新的作业。
如果作业处理器100能够接收新的作业,则作业处理器100以相比作业队列142更高的优先级从回收队列144接收作业。具体来说,如果S30的判定结果为是,则作业处理器100从作业处理器100所属的处理组110的队列结构140中的回收队列144中取回先头的作业(作业处理器100保留其所属处理组110的ID)(S32)。
如果在S32从回收队列144中取回了作业(即作业的ID)(S34中的判定结果为是),则作业处理器100从作业管理单元150取回作业的详细信息(如处理过程信息)及其中间处理结果(以及表示导致该中间处理结果的任务的进一步信息)(S42)。从处理流程的开始到获得了中间处理结果的阶段的任务被跳过(换句话说,这些任务被视为已执行)。作业处理器100响应于中间处理结果设置执行该作业的线程或进程的内部状态,从而将该线程或进程的内部状态设置为作业恢复等待状态(S44)。当处理进行至图4的处理时,执行图3的处理的作业处理器100恢复执行为了向内扩展而返回回收队列144的另一个作业处理器100的作业。
如果回收队列144为空,则作业处理器100无法从回收队列144取回作业(S34的判定结果为否)。然后作业处理器100从作业队列142取回先头的作业(即先头作业的ID)(S36)。如果作业队列142中不存在可用的作业,则在S36中作业处理器100无法取回任何作业(S38的判定结果为否),因此重复S30及后续步骤的操作。如果在S36取回了作业(S38的判定结果为是),则作业处理器100对作业执行图4的处理。
每当在图3的处理中接收了作业,作业处理器100就执行图4的处理。在图4的处理中,作业处理器100从作业管理单元150取回与S36中从作业队列142取回的作业ID相对应的作业的详细信息(如处理过程信息和目标数据),并使用该详细信息开始执行作业(S40)。当先头的作业被取回后,从作业队列142删除该先头的作业。(回收队列144中也是如此)。在作业执行进行至步骤S42和S44中的恢复等待状态之后,作业处理器100恢复执行具有在S32从回收队列144取回的作业ID的作业(S40)。
作业处理器100根据处理过程信息所指示的流程顺次执行该作业的任务(S46)。作业可以在执行中被中断,也可以切换成恢复等待状态。例如,可以在作业中执行交互处理。作业处理器100为用户呈现输入屏幕,并在作业的执行被中断的恢复等待状态下以待机状态进行等待。具体来说,作业处理器100以待机状态进行等待,直到用户在输入屏幕上输入数据并且所输入的数据被发送(即作业处理器100以待机状态进行等待,直到确认输入数据正确)。如果从用户接收到中断作业执行的指令,或者在作业执行中检测到故障,则作业处理器100也切换至恢复等待状态。根据示例性实施例,处于恢复等待状态的作业的处理方式与正常作业不同。因此作业处理器100监控正在处理的作业是否被切换成恢复等待状态(S48)。如果作业不处在恢复等待状态,则作业处理器100返回S46执行处理,直到作业完成。
如果在S48作业切换至恢复等待状态,则作业处理器100存储作业在恢复等待状态阶段的处理结果(下文中称作“中间处理结果”)(S50)。如果作业流程中存在交互处理任务,则一直到紧接在交互处理任务之前的任务为止的得到的全部中间处理结果都被存储。如果作业的执行被用户的中断指令或故障中断,则存储一直到紧接在中断之前的任务为止得到的全部中间处理结果。要存储的中间处理结果包括未完成的目标数据的处理结果和作业处理器100在恢复等待状态阶段的内部状态(如用在取回向内扩展指令时的处理中的变量值)。对于将在向内扩展指令的取回期间与中间处理结果一起返回队列管理单元130的作业,执行中间处理结果的存储来作为处于恢复等待状态的作业的准备阶段。在存储之后,作业处理器100等待,直到满足从恢复等待状态切换的恢复条件(S52)。如果作业处理器100在交互处理中切换到恢复等待状态,则恢复条件是已经接收到用作交互处理目标的来自用户的输入数据。如果满足了恢复条件(S52中的判定结果为是),则作业处理器100恢复执行作业(S54),然后返回S46。根据处理流程进行处理,直到作业的执行完成。如果完成了作业的执行,则处理返回S40。由于先前执行的一个作业已完成,因此作业处理器100准备执行新的作业。如果已经接收到新的作业,则作业处理器100执行该新作业。
参照图5和图6对作业处理器100的向内扩展处理进行描述。
如图5所示,作业处理器100检查是否是向内扩展确认定时(S60)。向内扩展确认定时可以是以预定时间间隔出现的定时,或者是当作业的处理量改变时(例如当作业处理器100开始作业或结束作业)。在向内扩展确认定时到来时,作业处理器100确定作业处理器100是否处于允许接收向内扩展指令的状态(S62)。
如果在示例性实施例中要执行向内扩展,则具有低处理负荷的作业处理器100以较高优先级挂起。根据作业处理器100的处理负荷来切换是否为每个作业处理器100接收向内扩展指令。该操作的处理如图6所示。
作业处理器100周期性地执行图6的处理。作业处理器100判定其处理负荷是否低于预定的接收开始阈值(S70)。如果处理负荷低于该接收开始阈值,则作业处理器100切换到允许接收向内扩展指令的状态(S72)。作业处理器100的处理负荷由通过作业处理器100并行执行的作业数量表示,或者由分配给作业处理器100的作业执行资源(包括CPU和存储器)的当前使用率表示,或者由根据作业数量和当前使用率计算的指标值表示。
如果S70的判定结果为否,则作业处理器100判定其处理负荷是否高于预定的接收挂起阈值(S74)。如果处理负荷高于该接收挂起阈值,则作业处理器100切换成禁止接收向内扩展指令的状态(S76)。将高于接收开始阈值的值(高负荷值)设为接收挂起阈值。在该方式中,在允许接收向内扩展指令的状态和禁止接收向内扩展指令的状态之间的转换存在滞后,因此控制了由于轻微的处理负荷变动而导致状态频繁切换。如果S74的判定结果为否,则允许接收向内扩展指令的状态或禁止接收向内扩展指令的状态从当前状态保持不变。
返回图5的处理,作业处理器100在S62判定关于是否接收向内扩展指令的状态的当前值是否指示允许接收状态。
如果S62的判定结果为是,则作业处理器100切换至等待状态,以等待来自与作业处理器100的处理组110对应的向内扩展队列146的向内扩展指令(S64)。如果当时向内扩展队列146为空,则不存在也无法取回向内扩展指令(S66的判定结果为否)。然后作业处理器100返回S60,并等待到下一个确认定时。
如果S62的判定结果为否,即作业处理器100处在禁止接收向内扩展指令的状态,则作业处理器100当前可能处在高负荷状态。该作业处理器100不被看作向内扩展的挂起目标。S64之后的处理不被执行。作业处理器100停止从向内扩展队列146接收向内扩展指令,并返回S60以等待到下一个向内扩展确认定时。
如果等待向内扩展指令的作业处理器100在S66被通知了向内扩展指令,则作业处理器100取回向内扩展指令并切换到准备挂起状态。具体来说,作业处理器100停止从回收队列144和作业队列142取回作业,但继续执行当前正在执行的作业(S68)。如果在当前处理的作业中存在处于恢复等待状态的作业,则作业处理器100将该作业返回作业处理器100的处理组110的回收队列144(即将该作业添加至回收队列144的尾部),并在S68停止执行该作业。换句话说,如果在取回了向内扩展指令的时刻作业处于恢复等待状态,则处于恢复等待状态的作业处理器100不继续执行该作业。作业处理器100将该作业的处理转移至处于正常操作状态的另一作业处理器100。在将处于恢复等待状态的作业返回回收队列144时,作业处理器100将在转换成恢复等待状态时存储的中间处理结果的数据以及表示造成该中间处理结果的任务的信息与该作业的作业ID相关联地存储在作业管理单元150中。通过这种操作,从回收队列144接收该作业的另一作业处理器100随后使用中间处理结果的相关信息跳过作业的初始处理,并恢复执行处在恢复等待状态阶段的作业。
在S68中切换到准备挂起状态后,作业处理器100等待,直到当前执行的全部作业都已完成(S70)。当所有作业已完成后,作业处理器100停止自身(即停止作为作业处理器100的虚拟机或实例)(S72)。通过这种操作,作业处理器100变得不存在。处理组110中作为向内扩展目标的作业处理器100的数量减少1。在上述处理系统中,作业处理器100停止和删除自身。在一种不同的系统中,使用控制作业处理器100的生成和删除的另一个设备(处理),以使得作业处理器100可以请求其他设备删除作业处理器100。
处于准备挂起状态的作业处理器100不执行图5的处理。换句话说,将要挂起的作业处理器100不成为向内扩展的新目标。
下面参照图7对作业处理器100用于向外扩展的处理进行说明。
在图7的处理中,作业处理器100等待向外扩展主题148(向外扩展指令)到达(S80)。作业处理器100可以持续等待向外扩展主题,或者在确认定时(与向内扩展确认定时相同的定时)检查向外扩展主题的存在。当向外扩展主题到达时,作业处理器100判定作业处理器100自身是否处在准备挂起状态(S82)。如果不处在准备挂起状态,则作业处理器100返回S80以等待向外扩展主题。
当在S82判定作业处理器100自身处在准备挂起状态时,作业处理器100恢复从回收队列144和作业队列142取回作业(S84)。由此作业处理器100从准备挂起状态切换成正常操作状态。当在S82确定作业处理器100自身不处在准备挂起状态时(即处在正常操作状态),作业处理器100返回S80并丢弃在S80接收的向外扩展主题。
如果已经接收了向外扩展指令的处在准备挂起状态的作业处理器100切换成正常操作状态,则作为向外扩展目标的处理组110中处在正常操作状态(即取回作业)的作业处理器100的数量增加。
下面参照图8到图10对示例性实施例的处理系统的处理进行说明。
图8例示了在包括两个作业处理器100(#1和#2)的处理组110中执行的向内扩展处理的示例,每个作业处理器100均处在恢复等待状态并没有作业。
在事件(1)中,当监控定时到来时,监控单元160从任务管理单元150取回处理组110的处理负荷信息(如队列结构140中等待作业的数量)。作业处理器#1和#2中的每一个都将其处理负荷与阈值比较(事件(2.1)和(3.1))。在此示例中,作业处理器#1和#2中每一个的处理负荷都低于阈值,并且作业处理器#1和#2都处于允许接收向内扩展指令的状态(等待状态)。在图5的处理中,作业处理器100在每个确认定时从队列管理单元130取回作业。在图8的处理中,作业处理器#1和#2中的每一个将作业处理器#1和#2中的每一个处于等待状态的通知存储在队列管理单元130中。在把向内扩展指令输入向内扩展队列146时,队列管理单元130按照等待状态的存储顺序将向内扩展指令通知给作业处理器#1和#2中的每一个。(图8处理的具体实现方法与图5处理的不同,但二者的处理在实际控制上基本相同)。在图8的处理中,更早地将作业处理器#1的允许接收状态存储在队列管理单元130中。在事件(4)中,监控单元160检查处理组110的处理负荷并确定要执行向内扩展。随后监控单元160将此示例中的一个向内扩展指令发送至队列管理单元130中处理组110的向内扩展队列146。在事件(5)中,当把向内扩展指令输入向内扩展队列146时,队列管理单元130按照等待状态的存储顺序将该向内扩展指令通知给作业处理器,即首先通知给作业处理器#1。由于输入向内扩展队列146的向内扩展指令的数量为1,因此不对作业处理器#2通知向内扩展指令。在事件(6)中,已经接收到向内扩展指令的作业处理器#1切换成准备挂起状态。作业处理器#1在继续执行已经取回并且正在处理的作业的同时,停止从队列管理单元130取回作业。在事件(7)中,当在接收到向内扩展指令时正在执行的作业中的最后一个作业的执行已完成时,在事件(8)停止作业处理器100的实例。通过这种方式,从处理组110中删除作业处理器#1,构成处理组110的作业处理器100的数量减少一。
图9例示了在包括两个作业处理器#1和#2的处理组110中执行的向内扩展处理的示例。已经接收到向内扩展指令的作业处理器#1具有处在恢复等待状态的作业。
在图9中,关于至少作业处理器#1处在向内扩展指令的等待状态的通知已经存储在队列管理单元130中。监控单元160在事件(1)监控处理负荷,并且如果在事件(2)中将向内扩展指令发送至队列管理单元130中的向内扩展队列146,则队列管理单元130在事件(3)中将该向内扩展指令通知给作业处理器#1。已经接收到向内扩展指令的作业处理器#1切换成准备挂起状态,在事件(4)中停止从队列管理单元130接收作业。作业处理器#1具有处于等待状态的作业,然后在事件(5)将所有处于等待状态的作业返回队列管理单元130中的回收队列144。作业处理器#1继续执行其余正在处理的作业(即不处在等待状态的作业)。在完成这些作业的执行时,作业处理器#1在事件(8)停止并删除自身。
作业处理器#2未接收到向内扩展指令,保持为正常操作状态并继续取回作业。在允许取回新的作业时,在事件(6),作业处理器#2尝试首先从回收队列144取回作业。回收队列144具有从作业处理器#1返回的处于恢复等待状态的作业。作业处理器#2自然地取回该作业。作业处理器#2取回处于恢复等待状态的该作业,跳过从该作业流程的开始到恢复等待状态之前阶段的任务,然后在事件(7)恢复执行恢复等待状态阶段的任务。在回收队列144存在可用作业时,处于正常操作状态的作业处理器#2以较高优先级从回收队列144取回作业。
图10例示了第一阶段和第二阶段的向外扩展。图10中的事件(1)至事件(4)与图9处理中的事件(1)至(4)相同。如图10所示,处理组110的处理负荷增大,并且要在处于准备挂起状态的作业处理器#1删除自身之前向外扩展。如果在事件(5)中监控单元160的监控结果表明处理组110的处理负荷高于第一向外扩展阈值(见图2中的S18),则监控单元160在事件(6)中将向外扩展指令发送至队列管理单元130中的向外扩展主题148。在事件(7)中,队列管理单元130将接收的向外扩展指令多点传播至处理组110中所有的作业处理器(即作业处理器#1和#2)。在图7的处理中,作业处理器100以异步方式在其特有的定时接收向外扩展指令。在这种情况下,作业处理器#1和#2不在图10所示的同一定时接收向外扩展指令,而是在其间具有略微时间差异的不同定时进行接收。作业处理器#1处在准备挂起状态(作业取回挂起状态)。在接收到向外扩展指令时,作业处理器#1从准备挂起状态切换,并在事件(8)恢复取回作业。另一方面,作业处理器#2保持在正常操作状态,并不对向外扩展指令作出响应(即继续取回并执行作业)。事件(6)至(8)是第一阶段向外扩展。如果处理组110中的处理负荷的增加不被充分控制,那么处理组110的处理负荷将在事件(9)中升至超过第二向外扩展阈值。然后监控单元160检测增大的处理负荷(见图2的S22)。监控单元160在事件(10)将向外扩展指令输出至自动缩放器170。在事件(11)接收到向外扩展指令时,自动缩放器170在处理组110内生成新的作业处理器100。从而处理组110被向外扩展。
根据该示例性实施例,如果要执行向内扩展,则将预定数量的向内扩展指令(例如一个向内扩展指令)输入向内扩展队列146(见图2)。处在允许接收向内扩展指令的状态的作业处理器100以先入先出方式取回向内扩展指令,并切换成准备挂起状态。每当要执行向内扩展时,预定数量的处于正常操作状态的作业处理器100将停止作业取回,并切换成准备挂起状态。在完成了已开始作业的执行后,作业处理器100删除自身。
根据该示例性实施例,处在中心的监控单元160无需监控每个作业处理器100的作业执行状态以识别要停止哪个作业处理器100。在接收到向内扩展指令时,作业处理器100自身自主地准备挂起。当所有已开始的作业完成后,作业处理器100挂起其操作。根据该示例性实施例,监控单元160监控处理组110的整体处理负荷,而不是监控处理组110中每个作业处理器100的操作状态。
相反地,在响应于向外扩展指令的第一阶段向外扩展中,将向外扩展指令传送至目标处理组110中的所有作业处理器100。向外扩展指令被传送至处于准备挂起状态的所有作业处理器100,并且所有处于准备挂起状态的作业处理器100切换回正常操作状态。准备挂起状态是一种过渡状态,处于准备挂起状态的作业处理器100在较短的时间段内完成已开始的作业并删除自身。在发布向外扩展指令时处理组110中处于准备挂起状态的作业处理器100的数量并不大(例如与同一时刻发布的向内扩展指令的数量相同)。即使所有处于准备挂起状态的作业处理器100切换回正常操作状态,处理组110中的作业处理器100的数量也不太可能突然增大很多。使用向外扩展主题148的第一阶段向外扩展只使得处在准备挂起状态的作业处理器100恢复作业取回。第一阶段向外扩展的执行相比标准(第二阶段)向外扩展具有较快的响应速度。第一阶段向外扩展对处理负荷的增加作出快速响应。处于正常操作状态的作业处理器100的数量增加,队列结构140中的作业的取回速度提高。处理负荷上的增大被消除或减少。
如果处理负荷上的超量未通过第一阶段向外扩展得以解决,则根据该示例性实施例通过第二阶段向外扩展生成新的作业处理器100来提高处理组110的吞吐量(图2的S24)。
根据该示例性实施例,响应于向内扩展指令的接收已经成为挂起目标的作业处理器100(即处于准备挂起状态的作业处理器100)将处于恢复等待状态的作业返回回收队列144。通过这种配置,作为挂起目标的作业处理器100删除自身,而不等待处于恢复等待状态的不知何时恢复以及何时能够完成的作业的完成。
处于正常操作状态的作业处理器100以相比作业队列142中的作业更高的优先级执行返回回收队列144的处于恢复等待状态的作业。按照处于恢复等待状态的作业的执行次序,这些作业不被后来输入的作业超越。
在处理组110的作业处理器100中,如上文所述,仅有一个处于允许接收向内扩展指令的状态并且其处理负荷低于接收开始阈值的作业处理器100,其从向内扩展队列146取回向内扩展指令。这仅是一种操作示例。可替代地,处理组110中所有处于正常操作状态的作业处理器100都可以取回向内扩展指令。作业处理器100的处理负荷越高(进行中的作业越多),作业处理器100从准备挂起状态切换到删除的时间就越长。不过,与所有的作业处理器100均取回向内扩展指令的情况相比,如果具有较高处理负荷的作业处理器100被排除于参与取回向内扩展指令的范围之外,则能够更快地执行向内扩展指令。
本示例性实施例的处理系统可以包括根据处理组110中的作业处理器100的数量执行支付操作的支付单元。
处理系统的管理功能是通过作业输入单元120、队列管理单元130、作业管理单元150、监控单元160和自动缩放器170执行的。例如,处理系统的管理功能可以通过使计算机执行描述了这些单元的对应功能模块的程序来执行。计算机可以包括硬件电路结构,其包括诸如中央处理单元(CPU)的微处理器,包含随机访问存储器(RAM)、只读存储器(ROM)的存储器,控制硬盘驱动器(HDD)的控制器,各种输入输出接口,控制与诸如局域网的网络进行连接的网络接口,以及使这些单元互连的总线。从诸如紧致盘(CD)或数字多功能盘(DVD)的可移除盘记录介质读取数据或向其写入数据的盘驱动器可以通过输入输出接口连接至总线。从诸如闪存的符合各种标准的可移除非易失性记录介质读取数据和/或写入数据的存储器读写器可以通过输入输出接口连接至总线。描述各功能模块的处理内容的程序可以通过诸如CD或DVD的记录介质或者通过诸如网络的通信线路存储在诸如硬盘驱动器的固定存储装置上,并安装至计算机中。存储在固定存储装置上的程序被读出到RAM上,然后通过诸如CPU的微处理器执行,以实现上述功能模块。这些功能模块组的部分或全部可以使用诸如专用大规模集成(LSI)、专用集成电路(ASIC)或现场可编程门阵列(FPGA)的硬件电路来实现。
提供管理功能的功能模块可以通过网络分布在多个计算机当中,而不是在单个计算机上实现。这些功能模块是通过计算机之间的通信来实现。
作业处理器100是通过使计算机具有其管理功能或者使连接至网络的多个计算机中的每一个执行描述了作业处理器100的功能(处理过程)的程序来实现的。
出于示例和说明的目的而提供本发明示例性实施例的前述说明。并不旨在穷尽本发明或将其限制为所公开的精确形式。显然地,对于本领域技术人员来说,多种修改和变型是明显的。实施例的选择和描述是用来最佳地解释本发明的原理及其实际应用,从而使得本领域技术人员能够针对各种实施例来理解本发明,并利用各种改型来构思具体应用。本发明的范围由所附权利要求及其等价形式限定。
Claims (6)
1.一种处理系统,包括:
处理请求队列,其对应于处理组并且额外存储寻址到该处理组的到达的处理请求;
至少一个处理器,其属于该处理组,并且在被允许接收新的处理请求时从处理请求队列取回处理请求,并处理取回的处理请求;和
监控单元,其监控该处理组的处理负荷,并且在通过监控判定该处理组的处理负荷变得低于预定收缩阈值时,将组收缩指令发布给该处理组,
其中如果已经发布了组收缩指令,则该处理组中的预定数量的处理器成为挂起目标,以及其中作为挂起目标的处理器停止从该处理组的处理请求队列取回新的处理请求,在完成所有已取回的处理请求的处理后停止操作,并且随后从处理组中排除。
2.根据权利要求1所述的处理系统,进一步包括与该处理组相关联的回收队列,
其中如果在取回的处理请求中存在处于恢复等待状态中等待从挂起恢复的处理请求,则已成为挂起目标的处理器将处于恢复等待状态的处理请求添加至回收队列,以从取回的处理请求中去除处于恢复等待状态的处理请求,并且
其中如果该处理器变为允许接收新的处理请求,则该处理器优先从回收队列取回处理请求,如果回收队列中不存在可用的处理请求,则该处理器从处理请求队列中取回处理请求。
3.根据权利要求2所述的处理系统,进一步包括中间结果存储器,其存储处在处理请求的处理的中间阶段的处理请求的中间处理结果,
其中已成为挂起目标的处理器使得中间结果存储器以使得中间处理结果与添加至回收队列的处理请求相关联的方式,存储处于恢复等待状态的处理请求的一直到恢复等待状态阶段的中间处理结果,并且
其中在从回收队列取回处理请求后,如果该处理请求的处理已经完成到恢复等待状态阶段,则处理器使用中间处理存储器中与处理请求相关联地存储的中间处理结果来恢复该处理。
4.根据权利要求1至3之一所述的处理系统,其中在通过监控判定了该处理组的处理负荷变得高于预定扩张阈值时,监控单元将组扩张指令发布给该处理组中的每个处理器,
其中如果处理器是挂起目标但尚未挂起,则处理器响应于组扩张指令的接收而从挂起目标进行切换,并恢复从处理请求队列取回新的处理请求。
5.根据权利要求1至3之一所述的处理系统,进一步包括与该处理组相关联的收缩指令队列,
其中监控单元将要发布给该处理组的组收缩指令添加到与该处理组相关联的收缩指令队列,并且
其中仅当处理负荷低于针对处理负荷预定的挂起目标阈值时,每个处理器才执行从收缩指令队列取回组收缩指令的取回操作,并且如果已经通过取回操作取回了组收缩指令,则处理器成为挂起目标。
6.根据权利要求4所述的处理系统,进一步包括与该处理组相关联的收缩指令队列,
其中监控单元将要发布给该处理组的组收缩指令添加到与该处理组相关联的收缩指令队列,并且
其中仅当处理负荷低于针对处理负荷预定的挂起目标阈值时,每个处理器才执行从收缩指令队列取回组收缩指令的取回操作,并且如果已经通过取回操作取回了组收缩指令,则处理器成为挂起目标。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012052061A JP2013186745A (ja) | 2012-03-08 | 2012-03-08 | 処理システム及びプログラム |
JP2012-052061 | 2012-03-08 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103309731A true CN103309731A (zh) | 2013-09-18 |
CN103309731B CN103309731B (zh) | 2017-12-29 |
Family
ID=49115241
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210380229.3A Active CN103309731B (zh) | 2012-03-08 | 2012-10-09 | 处理系统 |
Country Status (3)
Country | Link |
---|---|
US (1) | US8826291B2 (zh) |
JP (1) | JP2013186745A (zh) |
CN (1) | CN103309731B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111124254A (zh) * | 2018-10-30 | 2020-05-08 | 伊姆西Ip控股有限责任公司 | 调度存储空间回收请求的方法、电子设备和程序产品 |
Families Citing this family (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20140080058A (ko) * | 2012-12-20 | 2014-06-30 | 삼성전자주식회사 | 멀티코어를 위한 로드 밸런싱 방법 및 휴대 단말 |
US8813245B1 (en) | 2013-01-25 | 2014-08-19 | Amazon Technologies, Inc. | Securing content using pipelines |
US9223621B1 (en) | 2013-01-25 | 2015-12-29 | Amazon Technologies, Inc. | Organizing content using pipelines |
US9183049B1 (en) * | 2013-01-25 | 2015-11-10 | Amazon Technologies, Inc. | Processing content using pipelines |
US9311146B2 (en) * | 2013-05-24 | 2016-04-12 | International Business Machines Corporation | Strategic placement of jobs for spatial elasticity in a high-performance computing environment |
US9594545B2 (en) | 2013-06-05 | 2017-03-14 | Splunk Inc. | System for displaying notification dependencies between component instances |
US8756614B2 (en) | 2013-06-05 | 2014-06-17 | Splunk Inc. | Central registry for binding features using dynamic pointers |
US10061626B2 (en) | 2013-06-05 | 2018-08-28 | Splunk Inc. | Application framework providing a registry for mapping names to component instances |
JP6115331B2 (ja) * | 2013-06-06 | 2017-04-19 | 富士通株式会社 | トランザクション再開プログラム、情報処理装置及びトランザクション再開方法 |
US8978036B2 (en) | 2013-07-29 | 2015-03-10 | Splunk Inc. | Dynamic scheduling of tasks for collecting and processing data from external sources |
JP6165016B2 (ja) * | 2013-10-04 | 2017-07-19 | オリンパス株式会社 | 負荷分散制御装置 |
JP6080213B2 (ja) * | 2013-11-01 | 2017-02-15 | 日本電信電話株式会社 | システム連携装置、その方法およびプログラム |
US9495238B2 (en) | 2013-12-13 | 2016-11-15 | International Business Machines Corporation | Fractional reserve high availability using cloud command interception |
US20150172204A1 (en) * | 2013-12-13 | 2015-06-18 | International Business Machines Corporation | Dynamically Change Cloud Environment Configurations Based on Moving Workloads |
US9246840B2 (en) | 2013-12-13 | 2016-01-26 | International Business Machines Corporation | Dynamically move heterogeneous cloud resources based on workload analysis |
JP6256594B2 (ja) * | 2014-03-28 | 2018-01-10 | 富士通株式会社 | プログラム、管理方法およびコンピュータ |
JP6477081B2 (ja) * | 2015-03-18 | 2019-03-06 | 富士ゼロックス株式会社 | プログラム、情報処理装置及び情報処理方法 |
JP6492865B2 (ja) * | 2015-03-26 | 2019-04-03 | 富士ゼロックス株式会社 | 情報処理装置、プログラム及び情報処理方法 |
JP6713280B2 (ja) * | 2015-12-25 | 2020-06-24 | 株式会社あかつき | 情報処理システム、及び情報処理プログラム |
AU2017258659B2 (en) * | 2016-04-28 | 2020-05-14 | Snowflake Inc. | Multi-Cluster Warehouse |
JP6724631B2 (ja) * | 2016-07-27 | 2020-07-15 | 富士ゼロックス株式会社 | 情報処理装置及びプログラム |
JP6926768B2 (ja) * | 2017-07-20 | 2021-08-25 | 富士フイルムビジネスイノベーション株式会社 | 情報処理装置および情報処理システム |
JP7135648B2 (ja) * | 2018-09-20 | 2022-09-13 | 富士フイルムビジネスイノベーション株式会社 | 中継システム |
CN109669773B (zh) * | 2018-11-12 | 2024-03-08 | 平安科技(深圳)有限公司 | 金融数据处理方法、装置、设备和存储介质 |
EP4361807A1 (en) * | 2021-06-24 | 2024-05-01 | Nippon Telegraph And Telephone Corporation | Resource dynamic allocation device, resource dynamic allocation program, resource dynamic allocation system, and resource dynamic allocation method |
WO2024004930A1 (ja) * | 2022-06-28 | 2024-01-04 | 京セラドキュメントソリューションズ株式会社 | クラウドシステム |
CN118689913B (zh) * | 2024-08-27 | 2024-11-22 | 深圳市金政软件技术有限公司 | 数据异步处理方法、设备及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060150191A1 (en) * | 2004-12-22 | 2006-07-06 | Mineyoshi Masuda | Load state monitoring apparatus and load state monitoring method |
CN1908903A (zh) * | 2005-08-01 | 2007-02-07 | 富士通株式会社 | 执行作业步的系统和方法以及计算机产品 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3139536B2 (ja) | 1997-05-26 | 2001-03-05 | 日本電気株式会社 | 分散バッチジョブ処理システムおよびその障害時におけるジョブの自動再起動方法 |
JP2002342298A (ja) | 2001-05-11 | 2002-11-29 | Fujitsu Ltd | クライアント・サーバ型情報処理システム及び並列ロード・バランス方式 |
JP2004192449A (ja) | 2002-12-12 | 2004-07-08 | Toshiba Corp | Web型クライアントサーバシステムにおける負荷分散方法、負荷分散システム、および負荷分散プログラム |
JP4107676B2 (ja) | 2006-07-21 | 2008-06-25 | インターナショナル・ビジネス・マシーンズ・コーポレーション | トランザクション引継ぎシステム |
JP2009265778A (ja) | 2008-04-22 | 2009-11-12 | Dino Co Ltd | 仮想化サーバ |
US8514868B2 (en) * | 2008-06-19 | 2013-08-20 | Servicemesh, Inc. | Cloud computing gateway, cloud computing hypervisor, and methods for implementing same |
US8250215B2 (en) * | 2008-08-12 | 2012-08-21 | Sap Ag | Method and system for intelligently leveraging cloud computing resources |
US8631403B2 (en) * | 2010-01-04 | 2014-01-14 | Vmware, Inc. | Method and system for managing tasks by dynamically scaling centralized virtual center in virtual infrastructure |
US8661120B2 (en) * | 2010-09-21 | 2014-02-25 | Amazon Technologies, Inc. | Methods and systems for dynamically managing requests for computing capacity |
US8667495B1 (en) * | 2010-12-29 | 2014-03-04 | Amazon Technologies, Inc. | Virtual resource provider with virtual control planes |
US8909785B2 (en) * | 2011-08-08 | 2014-12-09 | International Business Machines Corporation | Smart cloud workload balancer |
US20130061220A1 (en) * | 2011-09-06 | 2013-03-07 | Xerox Corporation | Method for on-demand inter-cloud load provisioning for transient bursts of computing needs |
US9372735B2 (en) * | 2012-01-09 | 2016-06-21 | Microsoft Technology Licensing, Llc | Auto-scaling of pool of virtual machines based on auto-scaling rules of user associated with the pool |
-
2012
- 2012-03-08 JP JP2012052061A patent/JP2013186745A/ja active Pending
- 2012-07-20 US US13/554,691 patent/US8826291B2/en not_active Expired - Fee Related
- 2012-10-09 CN CN201210380229.3A patent/CN103309731B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060150191A1 (en) * | 2004-12-22 | 2006-07-06 | Mineyoshi Masuda | Load state monitoring apparatus and load state monitoring method |
CN1908903A (zh) * | 2005-08-01 | 2007-02-07 | 富士通株式会社 | 执行作业步的系统和方法以及计算机产品 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111124254A (zh) * | 2018-10-30 | 2020-05-08 | 伊姆西Ip控股有限责任公司 | 调度存储空间回收请求的方法、电子设备和程序产品 |
CN111124254B (zh) * | 2018-10-30 | 2023-09-29 | 伊姆西Ip控股有限责任公司 | 调度存储空间回收请求的方法、电子设备和程序产品 |
Also Published As
Publication number | Publication date |
---|---|
US20130239115A1 (en) | 2013-09-12 |
US8826291B2 (en) | 2014-09-02 |
JP2013186745A (ja) | 2013-09-19 |
CN103309731B (zh) | 2017-12-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103309731B (zh) | 处理系统 | |
CN111338773B (zh) | 一种分布式定时任务调度方法、调度系统及服务器集群 | |
US10382380B1 (en) | Workload management service for first-in first-out queues for network-accessible queuing and messaging services | |
CN100424649C (zh) | 管理服务器、承担服务器及其所构成的系统和控制方法 | |
US9152491B2 (en) | Job continuation management apparatus, job continuation management method and job continuation management program | |
JP2005056391A (ja) | コンピューティング環境の作業負荷を均衡させる方法およびシステム | |
JP4992408B2 (ja) | ジョブ割当プログラム、方法及び装置 | |
CN111880906A (zh) | 虚拟机高可用性管理方法、系统以及存储介质 | |
WO2016030973A1 (ja) | マルチテナントリソース調停方法 | |
JP6631710B2 (ja) | 仮想化管理プログラム、仮想化管理装置および仮想化管理方法 | |
KR20200080458A (ko) | 클라우드 멀티-클러스터 장치 | |
CN111831408A (zh) | 异步任务处理方法、装置、电子设备及介质 | |
CN116702885A (zh) | 同步数据并行训练控制方法、系统、装置、设备及介质 | |
CN111401752A (zh) | 一种飞轮储能调频共享处理方法、装置、系统及电子设备 | |
JP2011108014A (ja) | 仮想マシン管理装置、仮想マシン管理方法、及び仮想マシン管理プログラム | |
US8788601B2 (en) | Rapid notification system | |
CN114201280A (zh) | 多媒体数据的处理方法、装置、设备以及存储介质 | |
US11113106B2 (en) | Coordinating distributed task execution | |
US10616317B2 (en) | Method and system for affinity load balancing | |
CN115640100B (zh) | 一种虚拟机信息同步方法及计算机可读介质 | |
CN116319758A (zh) | 数据迁移方法、装置、电子设备及可读存储介质 | |
CN111752695B (zh) | 下线方法、装置、设备以及存储介质 | |
JP2016042338A (ja) | 情報処理システム、情報処理装置、情報処理装置の制御方法、及びプログラム | |
JP6459654B2 (ja) | イベントドリブンシステム、情報処理装置、イベントドリブンプログラムおよびイベントドリブン方法 | |
CN108270857A (zh) | 一种云计算操作系统负载均衡方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP01 | Change in the name or title of a patent holder | ||
CP01 | Change in the name or title of a patent holder |
Address after: Tokyo Patentee after: Fuji film business innovation Co.,Ltd. Address before: Tokyo Patentee before: Fuji Xerox Co.,Ltd. |