首页> 中国专利> 服务资源控制系统和服务资源控制方法

服务资源控制系统和服务资源控制方法

摘要

本发明提供一种服务资源控制系统,包括:服务确定模块,确定服务请求消息对应的目标服务;资源要求确定模块,根据预记录的不同服务对系统资源的要求量,确定所述目标服务对所述系统资源的要求量;资源剩余统计模块,统计所述系统资源的剩余量;控制方式确定模块,比较所述系统资源的剩余量和所述目标服务对所述系统资源的要求量,根据比较结果确定对所述目标服务的资源控制方式;资源分配控制模块,按确定的资源控制方式,控制对所述目标服务的系统资源分配。相应地,本发明还提供一种服务资源控制方法。通过本发明的技术方案,从服务层次上度量特定服务的资源消耗,针对服务的特性和现有资源利用情况,采用不同的降级服务,从而保障整个系统的健壮稳定。

著录项

  • 公开/公告号CN102904942A

    专利类型发明专利

  • 公开/公告日2013-01-30

    原文格式PDF

  • 申请/专利权人 用友软件股份有限公司;

    申请/专利号CN201210371144.9

  • 发明设计人 何冠宇;

    申请日2012-09-28

  • 分类号

  • 代理机构北京友联知识产权代理事务所(普通合伙);

  • 代理人尚志峰

  • 地址 100094 北京市海淀区北清路68号用友软件园

  • 入库时间 2024-02-19 17:37:56

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2015-12-09

    授权

    授权

  • 2015-11-25

    著录事项变更 IPC(主分类):H04L29/08 变更前: 变更后: 申请日:20120928

    著录事项变更

  • 2013-03-13

    实质审查的生效 IPC(主分类):H04L29/08 申请日:20120928

    实质审查的生效

  • 2013-01-30

    公开

    公开

说明书

技术领域

本发明涉及资源管理领域,具体而言,涉及一种服务资源控制系统和 一种服务资源控制方法。

背景技术

任何计算都需要消耗资源,这里的资源主要有CPU、内存、磁盘、进 程、线程、数据库、网络、锁、文件等。任何系统的资源都是有限的,如 果计算所要求的资源超过了系统的能力,系统就会发生故障,影响整个系 统的稳定性。例如某个计算请求对内存的请求超过了系统的容量,发生内 存溢出错误,导致整个系统的崩溃。又例如某种类型的服务,是资源占用 时间较长的服务,这种服务如果在交易系统中同时发生过多,其他的服务 会长时间不可获得,从而影响整个系统的响应,导致系统成为僵尸系统。

现有的一些技术方案中,主要从系统上提供了一些局部的解决方案, 如在网络安全上,提供的防DDOS攻击,就是一种针对特定类型的网络请 求的降级服务,降级方式是直接抛弃这中有DDOS攻击嫌疑的网络请求。 又如,某些服务器,如Apache Web服务器,可对最大的连接数进行了控 制,其实是针对线程和网络资源消耗而进行的一种降级服务。传统的技术 方案,并不关心计算服务本身的特性,因此在上层应用系统的保护上,缺 乏足够的鲁棒性支持。

任何系统的资源都是有限的,一个开放的服务系统,不可避免的要面 对各种不同的服务请求,不同的请求对资源的要求也有不同。不可避免的 是,有些服务对特定资源的会影响系统的健壮性,传统的技术从系统层面 上,如全局的网络连接数、线程池大小控制访问服务请求,没有考虑服务 自生的特质和服务的相关性,因此对系统的保护是有限的,例如对系统的 平均响应时间、对系统的最大并发数、对系统的最终稳定性都缺乏防护手 段。这种问题,在云计算的背景下更显得突出,在这种模式下用户的服务 水平合约(SLA)显得更为重要,应用服务为了能够满足SLA的要求。

因此,需要一种新的技术方案,能够从服务层次上度量特定服务的资 源消耗,针对服务的特性和现有资源利用情况,采用不同的降级服务,从 而保障整个系统的健壮稳定。

发明内容

本发明所要解决的技术问题在于,提供一种新的技术方案,能够从服 务层次上度量特定服务的资源消耗,针对服务的特性和现有资源利用情 况,采用不同的降级服务,从而保障整个系统的健壮稳定。

有鉴于此,本发明提供一种服务资源控制系统,包括:服务确定模 块,确定服务请求消息对应的目标服务;资源要求确定模块,根据预记录 的不同服务对系统资源的要求量,确定所述目标服务对所述系统资源的要 求量;资源剩余统计模块,统计所述系统资源的剩余量;控制方式确定模 块,比较所述系统资源的剩余量和所述目标服务对所述系统资源的要求 量,根据比较结果确定对所述目标服务的资源控制方式;资源分配控制模 块,按确定的资源控制方式,控制对所述目标服务的系统资源分配。应用 此技术方案,可以根据当前资源使用的情况,按照一定的策略,实施服务 降级,从而有效的提高系统的健壮性。即使在发生极端资源请求情况下, 系统的当前服务不会受到冲击,保障非极端服务请求的可用性和稳定性。

在上述技术方案中,优选地,还包括:资源使用统计模块,统计所述 系统资源的使用量,所述资源剩余统计模块根据预记录的所述系统资源的 最大量以及使用量,确定所述系统资源的剩余量。应用此技术方案,随时 掌握系统资源的使用量及剩余量,以便根据系统的整体资源能力和当前资 源利用的状况,制定相应的服务降级的方法并实施服务降级。

在上述技术方案中,优选地,所述控制方式确定模块从所述目标服务 预记录的与不同条件对应的推荐资源控制方式中,选择与比较结果相符的 条件对应的推荐资源控制方式,作为对系统资源的资源控制方式。在本技 术方案中,不同条件下,对应的推荐资源控制方式不同,系统会选择与比 较结果相符的条件对应的推荐资源方式,作为最终的资源控制方式,从而 确保系统使用的都是最适合的资源控制方式,使整个系统得到更全面的保 护,保障整个系统的健壮稳定。

在上述技术方案中,优选地,还包括:资源分配统计模块,在对所述 目标服务的系统资源分配的控制完成后,记录对所述目标服务实际的资源 控制方式和所述目标服务的资源使用量。在本技术方案中,记录每种资源 的当前使用情况和控制方式,从而方便系统对服务所需要的资源进行预 测,为服务降级决策提供必要的信息。

在上述技术方案中,优选地,所述资源控制方式包括正常服务方式、 拒绝服务方式、延迟重试方式和/或资源限制方式,所述资源分配控制模 块在所述确定的资源控制方式为所述正常服务方式时,按所述目标服务对 所述系统资源的要求量,为所述目标服务分配所述系统资源,在所述确定 的资源控制方式为所述拒绝服务方式时,不为所述目标服务分配所述系统 资源,在所述确定的资源控制方式为所述延迟重试方式时,等待预定时间 后重新确定对所述目标服务的资源控制方式,并在重新确定的次数到达预 定次数后,将所述确定的资源控制方式更新为所述拒绝服务方式,在所述 确定的资源控制方式为所述资源限制方式时,按预定资源限制量更新为所 述目标服务对所述系统资源的要求量,并重新确定对所述目标服务的资源 控制方式。在本技术方案中,系统根据不同的服务,指定服务要求的特 征,制定服务降级的方法,并根据系统的整体资源能力和当前资源利用状 况,实施服务降级或正常服务,从而提高系统的稳定性。

本发明还提供了一种服务资源控制方法,包括:步骤202,确定服务 请求消息对应的目标服务;步骤204,根据预记录的不同服务对系统资源 的要求量,确定所述目标服务对所述系统资源的要求量;步骤206,统计 所述系统资源的剩余量;步骤208,比较所述系统资源的剩余量和所述目 标服务对所述系统资源的要求量,根据比较结果确定对所述目标服务的资 源控制方式;步骤210,按确定的资源控制方式,控制对所述目标服务的 系统资源分配。应用此技术方案,可以根据当前资源使用的情况,按照一 定的策略,实施服务降级,从而有效的提高系统的健壮性。即使在发生极 端资源请求情况下,系统的当前服务不会受到冲击,保障非极端服务请求 的可用性和稳定性。

在上述技术方案中,优选地,所述步骤206包括:统计所述系统资源 的使用量;根据预记录的所述系统资源的最大量以及使用量,确定所述系 统资源的剩余量。资源使用统计模块统计系统资源的使用量,资源剩余统 计模块根据之前记录的系统资源的最大量以及使用量,确定系统资源的剩 余量。应用此技术方案,随时掌握系统资源的使用量及剩余量,以便根据 系统的整体资源能力和当前资源利用的状况,制定相应的服务降级的方法 并实施服务降级。

在上述技术方案中,优选地,所述步骤208包括:从为所述目标服务 预记录的与不同条件对应的推荐资源控制方式中,选择与比较结果相符的 条件对应的推荐资源控制方式,作为对系统资源的资源控制方式。在本技 术方案中,不同条件下,对应的推荐资源控制方式不同,系统会选择与比 较结果相符的条件对应的推荐资源方式,作为最终的资源控制方式,从而 确保系统使用的都是最适合的资源控制方式,使整个系统得到更全面的保 护,保障整个系统的健壮稳定。

在上述技术方案中,优选地,在对所述目标服务的系统资源分配的控 制完成后,记录对所述目标服务实际的资源控制方式和所述目标服务的资 源使用量。在本技术方案中,记录每种资源的当前使用情况和控制方式, 从而方便系统对服务所需要的资源进行预测,为服务降级决策提供必要的 信息。

在上述技术方案中,优选地,所述资源控制方式包括正常服务方式、 拒绝服务方式、延迟重试方式和/或资源限制方式,所述步骤210包括: 在所述确定的资源控制方式为所述正常服务方式时,按所述目标服务对所 述系统资源的要求量,为所述目标服务分配所述系统资源;在所述确定的 资源控制方式为所述拒绝服务方式时,不为所述目标服务分配所述系统资 源;在所述确定的资源控制方式为所述延迟重试方式时,等待预定时间后 重新确定对所述目标服务的资源控制方式,并在重新确定的次数到达预定 次数后,将所述确定的资源控制方式更新为所述拒绝服务方式;在所述确 定的资源控制方式为所述资源限制方式时,按预定资源限制量更新为所述 目标服务对所述系统资源的要求量,并重新确定对所述目标服务的资源控 制方式。在本技术方案中,系统根据不同的服务,指定服务要求的特征, 制定服务降级的方法,并根据系统的整体资源能力和当前资源利用状况, 实施服务降级或正常服务,从而提高系统的稳定性。

附图说明

图1示出了根据本发明的实施例的服务资源控制的系统框图;

图2示出了根据本发明的实施例的服务资源控制方法的流程图;

图3示出了根据本发明的实施例的支持降级服务的系统装置图;

图4示出了根据本发明的实施例的降级服务的工作流程图。

具体实施方式

为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附 图和具体实施方式对本发明进行进一步的详细描述。

在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是, 本发明还可以采用其他不同于在此描述的其他方式来实施,因此,本发明 并不限于下面公开的具体实施例的限制。

图1示出了根据本发明的实施例的服务资源控制的系统框图。

如图1所示,本发明的服务资源控制系统100包括:服务确定模块 102,确定服务请求消息对应的目标服务;资源要求确定模块104,根据 预记录的不同服务对系统资源的要求量,确定所述目标服务对所述系统资 源的要求量;资源剩余统计模块106,统计所述系统资源的剩余量;控制 方式确定模块108,比较所述系统资源的剩余量和所述目标服务对所述系 统资源的要求量,根据比较结果确定对所述目标服务的资源控制方式;资 源分配控制模块110,按确定的资源控制方式,控制对所述目标服务的系 统资源分配。应用此技术方案,可以根据当前资源使用的情况,按照一定 的策略,实施服务降级,从而有效的提高系统的健壮性。即使在发生极端 资源请求情况下,系统的当前服务不会受到冲击,保障非极端服务请求的 可用性和稳定性

在上述技术方案中,还包括:资源使用统计模块112,统计所述系统 资源的使用量,所述资源剩余统计模块根据预记录的所述系统资源的最大 量以及使用量,确定所述系统资源的剩余量。应用此技术方案,随时掌握 系统资源的使用量及剩余量,以便根据系统的整体资源能力和当前资源利 用的状况,制定相应的服务降级的方法并实施服务降级。

在上述技术方案中,所述控制方式确定模块108从所述目标服务预记 录的与不同条件对应的推荐资源控制方式中,选择与比较结果相符的条件 对应的推荐资源控制方式,作为对系统资源的资源控制方式。在本技术方 案中,不同条件下,对应的推荐资源控制方式不同,系统会选择与比较结 果相符的条件对应的推荐资源方式,作为最终的资源控制方式,从而确保 系统使用的都是最适合的资源控制方式,使整个系统得到更全面的保护, 保障整个系统的健壮稳定。

在上述技术方案中,还包括:资源分配统计模块114,在对所述目标 服务的系统资源分配的控制完成后,记录对所述目标服务实际的资源控制 方式和所述目标服务的资源使用量。在本技术方案中,记录每种资源的当 前使用情况和控制方式,从而方便系统对服务所需要的资源进行预测,为 服务降级决策提供必要的信息。

在上述技术方案中,所述资源控制方式包括正常服务方式、拒绝服务 方式、延迟重试方式和/或资源限制方式,所述资源分配控制模块在所述 确定的资源控制方式为所述正常服务方式时,按所述目标服务对所述系统 资源的要求量,为所述目标服务分配所述系统资源,在所述确定的资源控 制方式为所述拒绝服务方式时,不为所述目标服务分配所述系统资源,在 所述确定的资源控制方式为所述延迟重试方式时,等待预定时间后重新确 定对所述目标服务的资源控制方式,并在重新确定的次数到达预定次数 后,将所述确定的资源控制方式更新为所述拒绝服务方式,在所述确定的 资源控制方式为所述资源限制方式时,按预定资源限制量更新为所述目标 服务对所述系统资源的要求量,并重新确定对所述目标服务的资源控制方 式。在本技术方案中,系统根据不同的服务,指定服务要求的特征,制定 服务降级的方法,并根据系统的整体资源能力和当前资源利用状况,实施 服务降级或正常服务,从而提高系统的稳定性。

图2示出了根据本发明的实施例的服务资源控制方法的流程图。

如图2所示,本发明的服务资源控制方法包括:步骤202,确定服务 请求消息对应的目标服务;步骤204,根据预记录的不同服务对系统资源 的要求量,确定所述目标服务对所述系统资源的要求量;步骤206,统计 所述系统资源的剩余量;步骤208,比较所述系统资源的剩余量和所述目 标服务对所述系统资源的要求量,根据比较结果确定对所述目标服务的资 源控制方式;步骤210,按确定的资源控制方式,控制对所述目标服务的 系统资源分配。应用此技术方案,可以根据当前资源使用的情况,按照一 定的策略,实施服务降级,从而有效的提高系统的健壮性。即使在发生极 端资源请求情况下,系统的当前服务不会受到冲击,保障非极端服务请求 的可用性和稳定性。

在上述技术方案中,所述步骤206包括:统计所述系统资源的使用 量;根据预记录的所述系统资源的最大量以及使用量,确定所述系统资源 的剩余量。资源使用统计模块统计系统资源的使用量,资源剩余统计模块 根据之前记录的系统资源的最大量以及使用量,确定系统资源的剩余量。 应用此技术方案,随时掌握系统资源的使用量及剩余量,以便根据系统的 整体资源能力和当前资源利用的状况,制定相应的服务降级的方法并实施 服务降级。

在上述技术方案中,所述步骤208包括:从为所述目标服务预记录的 与不同条件对应的推荐资源控制方式中,选择与比较结果相符的条件对应 的推荐资源控制方式,作为对系统资源的资源控制方式。在本技术方案 中,不同条件下,对应的推荐资源控制方式不同,系统会选择与比较结果 相符的条件对应的推荐资源方式,作为最终的资源控制方式,从而确保系 统使用的都是最适合的资源控制方式,使整个系统得到更全面的保护,保 障整个系统的健壮稳定。

在上述技术方案中,在对所述目标服务的系统资源分配的控制完成 后,记录对所述目标服务实际的资源控制方式和所述目标服务的资源使用 量。在本技术方案中,记录每种资源的当前使用情况和控制方式,从而方 便系统对服务所需要的资源进行预测,为服务降级决策提供必要的信息。

在上述技术方案中,所述资源控制方式包括正常服务方式、拒绝服务 方式、延迟重试方式和/或资源限制方式,所述步骤210包括:在所述确 定的资源控制方式为所述正常服务方式时,按所述目标服务对所述系统资 源的要求量,为所述目标服务分配所述系统资源;在所述确定的资源控制 方式为所述拒绝服务方式时,不为所述目标服务分配所述系统资源;在所 述确定的资源控制方式为所述延迟重试方式时,等待预定时间后重新确定 对所述目标服务的资源控制方式,并在重新确定的次数到达预定次数后, 将所述确定的资源控制方式更新为所述拒绝服务方式;在所述确定的资源 控制方式为所述资源限制方式时,按预定资源限制量更新为所述目标服务 对所述系统资源的要求量,并重新确定对所述目标服务的资源控制方式。 在本技术方案中,系统根据不同的服务,指定服务要求的特征,制定服务 降级的方法,并根据系统的整体资源能力和当前资源利用状况,实施服务 降级或正常服务,从而提高系统的稳定性。

本发明提供了一套支持服务降级运行的装置,该装置可针对不同的服 务,指定服务资源要求的特征,制定服务降级的方法,并根据系统的整体 资源能力和当前资源利用状况,实施服务降级或者正常服务。

如图3所示,支持降级服务的系统装置300包括:服务资源特征描述 模块302,资源使用统计模块304,资源能力描述模块306,服务请求模 块308,服务降级决策模块310,服务降级统计收集模块312,支持服务 降级的服务运行环境314。

下面分别对各个模块做详细的介绍:

服务资源特征描述模块302:描述服务对资源要求特征以及在资源不 足的时候推荐的降级服务方式。如描述服务运行需要最大的线程数、需要 的最大内存、耗费的CPU、使用的并发控制信号资源等,除了静态描述, 还可以指定一个表达式,该表达式可以在运行时刻,根据服务请求的消息 计算可能需要的资源。并不是所有服务都需要进行资源要求特征描述,只 有需要利用降级能力的服务才进行描述。

资源使用统计模块304:基于资源能力描述模块描述的资源,记录每 种资源的当前使用情况。其中CPU资源、内存资源是实时采集的信息, 其他部分基于资源使用和回收情况统计。

资源能力描述模块306:描述当前系统的资源能力情况。主要包括, 系统的CPU能力(本装置可用到的CPU个数和CPU速度信息)、内存 大小(本装置可用到的内存资源信息,如Java进程中的最大堆内存,最 大永久堆内存、最大堆外内存)、各种不同类型的线程池(最大线程 数)、数据库信息(最大连接数)、并发控制信号资源(一个信号量,包 括名称和最大的信号数,每被获取一次,可用的信号数就减少一个,可以 用来做并发控制),通过资源能力描述模块,系统的资源极限是可以度量 的。

服务请求模块308:服务请求的入口,服务请求入口记录了请求消 息,通过请求消息和服务的资源特征描述,系统可以预测服务所需要的资 源,为降级服务决策提供必要的信息。

服务降级决策模块310:根据服务请求对资源的要求和当前资源的使 用统计情况,进行降级服务决策,如进行服务拒绝、延迟重试、减少处理 数据量等。

服务降级统计收集模块312:降级服务决策时,会通知该模块所采用 的决策方式。支持降级的服务运行环境,在服务的运行过程中,会把该服 务运行时的系统资源使用情况通过快照送给该模块,它能为系统降级服务 的调优提供统计数据的支持。

支持降级服务的服务运行环境314:负责运行服务,在运行过程中, 把上面描述的各个模块连接在一起,为服务提供一个可降级运行的环境。

图4示出了上述模块,在运行过程中的主体流程图,具体流程如下:

步骤402,系统发出服务请求,进入步骤404。

步骤404,服务请求模块接收服务请求,服务请求模块分析服务请求 的原始消息,并解释为目标服务和服务消息,这些信息传递给服务运行环 境。

步骤406,支持降级服务的服务运行环境根据目标服务,向服务资源 特征描述模块请求该服务的资源特征描述信息。

步骤408,判断服务是否需要降级服务控制。如果该服务,不需要降 级控制,那么服务将正常运行,进入步骤428;如果该服务需要降级控 制,进入步骤410。

步骤410,预测服务请求所需要的资源,并作为资源预测信息,传递 给降级服务决策模块。

步骤412,降级服务决策模块接受服务请求所需要的资源信息,并从 资源使用统计模块获取当前资源的使用情况信息。

步骤414,降级服务决策模块根据资源的情况决定是否降级。

步骤416,决定是否降级,如果降级,进入步骤418,如果不降级, 进入步骤430。

步骤418,降级服务决策模块进行降级决策。

步骤420,选择降级方式。

步骤422,服务降级运行:拒绝服务。此时,服务得不到执行。

步骤424,服务降级运行:设定资源限制。设定了资源限制,系统将 重新评估并预测服务所需要的资源。

步骤426,服务降级运行:延迟重试。此时,系统将延迟一段时间, 重新进行决策。

步骤428,服务正常运行。

步骤430,当系统不需要降级时,首先会为服务分配可以预先分配的 资源。

步骤432,运行服务。

步骤434,服务结束后释放其主动获取的资源。

步骤436,支持可降级服务的服务运行环境向服务降级统计模块输出 本次服务的降级情况,和资源使用情况。

下面以一个需要控制最大并发数的服务作为例子,描述本发明涉及到 的各个模块的工作过程,假设这个服务名称为SERVICE_A,最大执行数 为5:

1、资源能力描述模块定义一个并发控制信号资源:

SEMAPHORE:SERVCE_A=5。

2、服务资源特征描述模块为该服务指定需要使用前面定义的并发控 制信号资源,并说明一旦该资源不足,拒绝服务。

3、发生服务请求时,服务请求模块解释服务请求消息,表示该次请 求为SERVICE_A,可降级服务执行模块装载服务资源特征描述,从中可 知其需要降级服务的控制。

4、如果并发执行6次请求,前5次将会分配到所需的信号资源,服 务得到执行,而在第6个请求,则不能得到执行,服务被拒绝。如果运行 的5个请求任一个请求结束,那么服务所分配的资源将会释放,新的对 SERVICE_A的服务请求将能够获得信号资源,从而得到执行。

5、服务执行完毕,服务降级统计模块输出降级决策信息。

再以一个根据内存使用情况进行降级服务的例子,假设该服务为 SERVICE_B:

1、资源能力描述模块定义当前系统的最大内存是1024M。

2、资源特征描述模块为该服务指定一个表达式,该表达式用于评估 针对这个服务的服务请求所需要的内存,要求不能超过系统内存的一半, 并指定降级服务方案为延迟重试,重试次数为3。

3、发生服务请求时,服务请求模块解释服务请求消息,表示该次请 求为SERVICE_B,可降级服务执行模块装载服务资源特征描述为需要进 行基于消息的内存大小评估,他会调用表达式,并以服务请求消息作为表 达式输入,评估可能内存的使用情况。

4、服务降级决策模块根据这次请求的内存评估情况进行决策,如果 需要内存超过512M,那么将决策为拒绝服务,如果内存小于512M,假 设需要256M,那么他会根据当前系统的内存使用情况再次进行决策,如 果当前可用内存小于256M,那么他会延迟重试,如果重试超过三次,将 决策为拒绝服务,如果当前可用内存大于256M,那么服务将得到立即执 行。

5、服务执行完毕后向服务降级统计模块输出降级决策信息,如果服 务得到运行还会记录服务运行时实际消耗内存的情况。

以上结合附图详细说明了本发明的技术方案。通过本发明的技术方 案,系统可以根据当前资源使用的情况,按照一定的策略,实施服务降 级,从而有效的提高系统的健壮性。即使在发生极端资源请求情况下,系 统的当前服务也不会受到冲击,保障非极端服务请求的可用性和稳定性。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于 本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精 神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明 的保护范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号