CN108022028A - 一种资源处理方法及装置 - Google Patents

一种资源处理方法及装置 Download PDF

Info

Publication number
CN108022028A
CN108022028A CN201610941531.XA CN201610941531A CN108022028A CN 108022028 A CN108022028 A CN 108022028A CN 201610941531 A CN201610941531 A CN 201610941531A CN 108022028 A CN108022028 A CN 108022028A
Authority
CN
China
Prior art keywords
child resource
fusing
resource
child
configuration information
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
Application number
CN201610941531.XA
Other languages
English (en)
Other versions
CN108022028B (zh
Inventor
徐士伟
高先祥
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing Tu Niu Science And Technology Ltd
Original Assignee
Nanjing Tu Niu Science And Technology Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nanjing Tu Niu Science And Technology Ltd filed Critical Nanjing Tu Niu Science And Technology Ltd
Priority to CN201610941531.XA priority Critical patent/CN108022028B/zh
Publication of CN108022028A publication Critical patent/CN108022028A/zh
Application granted granted Critical
Publication of CN108022028B publication Critical patent/CN108022028B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • G06Q50/14Travel agencies

Landscapes

  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Tourism & Hospitality (AREA)
  • Engineering & Computer Science (AREA)
  • Economics (AREA)
  • Strategic Management (AREA)
  • Theoretical Computer Science (AREA)
  • Entrepreneurship & Innovation (AREA)
  • General Physics & Mathematics (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • Educational Administration (AREA)
  • Quality & Reliability (AREA)
  • Operations Research (AREA)
  • Game Theory and Decision Science (AREA)
  • Development Economics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Primary Health Care (AREA)
  • Hardware Redundancy (AREA)
  • Telephonic Communication Services (AREA)

Abstract

本发明实施例提供的一种资源处理方法及装置,属于计算机技术领域。该资源处理方法包括:获取业务资源;将业务资源按照不同业务类型进行拆分,得到多个子资源,每个子资源关联有多个子资源中至少一个除自身外的子资源,且相关联的子资源之间预设有熔断策略配置信息;将每个子资源分别设置在一个服务器上;基于运行过程的子资源对应的熔断策略配置信息,将运行过程的子资源与其相关联的子资源熔断。通过将业务资源进行拆分获得多个子资源分别放在不同服务器上,从而能快速水平扩充响应压力,当其中一个子资源出现异常时,通过熔断策略将与该子资源相关联的其他子资源之间的服务熔断,从而保证与该子资源相关联的其他子资源的服务能够被正常使用。

Description

一种资源处理方法及装置
技术领域
本发明涉及计算机技术领域,具体而言,涉及一种资源处理方法及装置。
背景技术
随着旅游业务不断扩大,旅游资源数量以及旅游资源品类也越来越繁多,作为对旅游资源的后台支撑系统也随之越来越庞大,然而目前在吞吐量、稳定性以及可扩展性上都无法满足日益增长的业务需求。因此,如何解决上述问题是目前面临的一大难题。
发明内容
本发明提供一种资源处理方法及装置,旨在解决业务水平扩充问题。
本发明提供一种源处理方法,所述方法包括:获取业务资源;将所述业务资源按照不同业务类型进行拆分,得到多个子资源,每个所述子资源关联有所述多个子资源中至少一个除自身外的子资源,且相关联的子资源之间预设有熔断策略配置信息;将每个所述子资源分别设置在一个服务器上;当一个所述子资源在运行过程中出现异常时,基于所述运行过程的子资源对应的所述熔断策略配置信息,将所述运行过程的子资源与其相关联的子资源熔断。
本发明提供的一种资源处理装置,包括:数据获取单元,用于获取业务资源;数据拆分单元,用于将所述业务资源按照不同业务类型进行拆分,得到多个子资源,每个所述子资源关联有所述多个子资源中至少一个除自身外的子资源,且相关联的子资源之间预设有熔断策略配置信息;数据设置单元,用于将每个所述子资源分别设置在一个服务器上;数据熔断单元,用于当一个所述子资源在运行过程中出现异常时,基于所述运行过程的子资源对应的所述熔断策略配置信息,将所述运行过程的子资源与其相关联的子资源熔断。
上述本发明提供的一种资源处理方法及装置,该资源处理方法通过将业务资源按照不同业务类型进行拆分,再将拆分后得到的多个子资源分别放在不同服务器上,从而实现水平扩充,通过设置熔断策略配置信息使得相关联的子资源之间中的一个子资源在运行过程中出现异常时,通过熔断能够有效地保证与该子资源相关联的其他子资源能够正常使用。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本发明实施例提供的一种电子设备的结构框图;
图2为本发明第一实施例提供的一种资源处理方法的流程图;
图3为本发明第二实施例提供的一种资源处理方法的流程图;
图4为本发明第三实施例提供的一种资源处理方法的流程图;
图5为本发明第四实施例提供的一种资源处理装置的结构框图;
图6为本发明第五实施例提供的一种资源处理装置的结构框图;
图7为本发明第六实施例提供的一种资源处理装置的结构框图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,为本发明实施例提供的一种电子设备的结构框图。所述电子设备200可以作为用户终端,也可以作为服务器。所述电子设备200包括资源处理装置、存储器201、存储控制器202、处理器203、外设接口204和输入输出单元205。
所述存储器201、存储控制器202、处理器203、外设接口204和输入输出单元205各元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。所述资源处理装置包括至少一个可以软件或固件(firmware)的形式存储于所述存储器201中或固化在所述电子设备200的操作系统(operating system,OS)中的软件功能模块。所述处理器203用于执行存储器201中存储的可执行模块,例如所述资源处理装置包括的软件功能模块或计算机程序。
其中,存储器201可以是,但不限于,随机存取存储器(Random Access Memory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(Programmable Read-Only Memory,PROM),可擦除只读存储器(Erasable Programmable Read-Only Memory,EPROM),电可擦除只读存储器(Electric Erasable Programmable Read-Only Memory,EEPROM)等。其中,存储器201用于存储程序,所述处理器203在接收到执行指令后,执行所述程序,前述本发明实施例任一实施例揭示的流过程定义的服务器所执行的方法可以应用于处理器203中,或者由处理器203实现。
处理器203可能是一种集成电路芯片,具有信号的处理能力。上述的处理器203可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述外设接口204将各种输入/输入装置耦合至处理器203以及存储器201。在一些实施例中,外设接口204、处理器203以及存储控制器202可以在单个芯片中实现。在其他一些实例中,他们可以分别由独立的芯片实现。
输入输出单元205用于提供给用户输入数据实现用户与所述服务器的交互。所述输入输出单元205可以是,但不限于,鼠标和键盘等。
请参阅图2,是本发明第一实施例提供的一种资源处理方法的流程图。下面将对图2所示的具体流程进行详细阐述。
步骤S301,获取业务资源。
作为一种实施方式,从本地获取业务资源。其中,所述业务资源是指不同的业务类型的资源混合在一起后的形成的业务资源。例如,所述业务资源为旅游资源,则旅游资源可以包括机票资源模块、酒店资源模块、跟团线路资源模块、导游资源模块或门票资源模块等等。
步骤S302,将所述业务资源按照不同业务类型进行拆分,得到多个子资源,每个所述子资源关联有所述多个子资源中至少一个除自身外的子资源,且相关联的子资源之间预设有熔断策略配置信息。
其中,所述子资源为所述业务资源按照不同业务类型进行拆分得到的,例如,当前业务资源为旅游,所述旅游资源包括机票、酒店、跟团线路。则按照不同业务类型拆分后的子资源有三类,第一子资源是机票资源模块、第二子资源是酒店资源模块、第三子资源是跟团线路资源模块。
其中,所述关联是指两个或多个子资源之间相互通信和相互依赖,也就是说两个或多个子资源之间互为条件而不可分离。例如,当前存在A和B两个相关联的子资源,当外部指令请求A中的资源时,在请求A的过程中,还会发出请求B的指令。
其中,所述熔断策略配置信息为预先设置在本地数据库中。所述熔断策略配置信息包括业务方法标志、滑动时间窗口、线程池容量、出错比例、出错数和熔断时间。
其中,所述业务方法标志用于设置业务方法的熔断策略标志,即为每个需要熔断的业务方法设置一个特定的标志,以通过该标志识别不同的业务方法,从而根据不同的业务方法实施不同的熔断策略。
所述滑动时间窗口用于统计当前时间段内执行信息。其中,当前时间段是指进入滑动时间窗口前的预设时间。所述执行信息是指在滑动时间窗口内的业务方法的执行结果。
所述线程池容量用于设置熔断线程大小,即当出现多个请求时,利用多线程异步的处理熔断,从而有效控制并发数量,并且当达到线程池容量的最大线程数时,判断该请求为错误的请求。
所述出错比例用于设置滑动窗口内出错比例的阈值,即通过设置的出错比例值来判断滑动时间窗口内的执行结果是否超过预设出错比例阀值。从而用来监测所述滑动时间窗口的执行结果。
所述出错数用于设置滑动窗口内出错数的阈值,即通过设置的出错数的数目的个数来判断滑动时间窗口内的执行结果是否超过预设出错数的阀值,从而用来监测所述滑动时间窗口的执行结果。
所述熔断时间是指直接熔断返回的时间长度。例如,当外部接口处于不健康状态时,直接熔断返回异常,当超过熔断时间后再次统计该接口的健康状态。其中,健康状态是指在滑动时间窗口内的执行结果是否超过预设出错比例的阀值或者是出错数的阀值。具体地,当熔断时间为10秒时,在熔断时间10秒内直接熔断返回,当超过熔断时间10秒后,重新统计滑动时间窗口内的执行结果。
步骤S303,将每个所述子资源分别设置在一个服务器上。
其中,将每个子资源独立部署在不同服务器上,即将一个子资源部署在一个服务器上,使得子资源与服务器之间形成一一对应的关系。
步骤S304,当一个所述子资源在运行过程中出现异常时,基于所述运行过程的子资源对应的所述熔断策略配置信息,将所述运行过程的子资源与其相关联的子资源熔断。
其中,将所述运行过程的子资源与其相关联的子资源熔断是指将与被请求的子资源相关联的其他子资源之间的服务熔断。
作为一种实施方式,当存在两个子资源时,所述两个子资源方分别为C和D,且C依赖与D,当D不稳定或者宕机时,即出现异常时,C会一直请求D,直到请求超时,然而这样就会使得C会有大量的请求阻塞,而D的不稳定会影响C的稳定性,然而通过将C与D之间的请求熔断或者是将D的服务熔断,以使C的请求不会被阻塞,从而保证C的服务不被D影响。
请参阅图3,是本发明第二实施例提供的一种资源处理方法的流程图。在本实施例中,所述熔断策略配置信息包括业务方法标志和滑动时间窗口。下面将对图3所示的具体流程进行详细阐述。
步骤S401,获取业务资源。
步骤S402,将所述业务资源按照不同业务类型进行拆分,得到多个子资源,每个所述子资源关联有所述多个子资源中至少一个除自身外的子资源,且相关联的子资源之间预设有熔断策略配置信息
步骤S403,将每个所述子资源分别设置在一个服务器上。
步骤S401、步骤S402和步骤S403的具体实施方式可以参考第一实施例中的对应的步骤,在此不再赘述。
步骤S404,基于所述业务方法标志拦截所述业务方法标志所对应的业务方法,所述业务方法为所请求所述子资源的方法。
其中,从熔断策略配置信息中获取业务方法标志,所述熔断策略配置信存储在数据库中和/或存储在缓存中,即所述熔断策略配置信息可以存储在数据库中,也可以存储在缓存中,还可以将熔断策略配置信息先配置在数据库中,然后再配置在缓存中,在本实施例中,优选地,将所述熔断策略配置信息配置在数据库和缓存中,通过配置在缓存中可以有效地增加读取该熔断策略配置信息的速度。根据所述业务方法标志的标志信息来判断需要熔断的业务方法,即根据不同的所述业务方法标志的标志信息来为不同的业务方法实现熔断。即通过标志信息找到与该标志信息相对应的业务方法。从而使得被拦截的业务方法能够改变所述熔断策略配置信息中的其他信息来判断该业务方法是否需要进行熔断。
作为一种实施方式,可以通过自定义注解的方式为业务方法定义一个熔断注解,从而通过拦截熔断注解的方式来拦截业务方法。其中,所述自定义注解是通过JDK的annotation注解来定义一个熔断注解,再通过Spring AOP将有熔断注解方法先切到处理熔断的方法上,实现熔断逻辑与具体业务逻辑的解耦。
步骤S405,基于所述滑动时间窗口内的执行结果,判断是否出现异常,若出现异常时,将所述运行过程的子资源与其相关联的子资源熔断。
其中,基于所述滑动时间窗口内的执行结果,判断是否出现异常是指通过获取所述滑动时间窗口内的执行结果中的所述出错比例,将获得的所述出错比例与预设出错比例进行比对,当所述出错比例大于所述预设出错比例时,判定为出现异常。反之,则判断为正常。
其中,熔断是指通过将该发生异常的子资源的服务进行降级处理,以使该服务停止或者是使得该子资源不能再提供该服务。
将所述运行过程的子资源与其相关联的子资源熔断是指将出现异常的子资源进行熔断。从而确保其他运行过程的子资源的稳定性。以使当某个相关联或者是相互依赖的运行过程的子资源出现大量的请求阻塞,从而导致其他运行过程中的子资源不可用,以使的资源的浪费以及请求时间的增加。
请参阅图4,是本发明第三实施例提供的一种资源处理方法的流程图。在本实施例中,所述熔断策略配置信息包括业务方法标志、滑动时间窗口、线程池容量、出错数、出错比例和熔断时间。下面将对图4所示的具体流程进行详细阐述。
步骤S501,获取业务资源。
步骤S502,将所述业务资源按照不同业务类型进行拆分,得到多个子资源,每个所述子资源关联有所述多个子资源中至少一个除自身外的子资源,且相关联的子资源之间预设有熔断策略配置信息
步骤S503,将每个所述子资源分别设置在一个服务器上。
步骤S501、步骤S502和步骤S503的具体实施方式可以参考第一实施例中的对应的步骤,在此不再赘述。
步骤S504,基于所述业务方法标志拦截所述业务方法标志所对应的业务方法,所述业务方法为所请求所述子资源的方法。
步骤S504的具体实施方式可以参考第二实施例中的对应的步骤,在此不再赘述。
步骤S505,基于所述滑动时间窗口内的执行结果,判断是否出现异常,若没有出现异常时,判断所述线程池容量是否已满,若是,则将所述运行过程的子资源与其相关联的子资源熔断。
其中,所述熔断策略配置信息存储在数据库中和/或存储在缓存中,即所述熔断策略配置信息可以存储在数据库中,也可以存储在缓存中,还可以将熔断策略配置信息先配置在数据库中,然后再配置在缓存中,在本实施例中,优选地,将所述熔断策略配置信息配置在数据库和缓存中,通过配置在缓存中可以有效地增加读取该熔断策略配置信息的速度。
作为一种实施方式,当所述熔断策略配置信息配置在数据库中时,可以通过配置页面进行动态修改。在配置所述熔断策略配置信息前可以预先对所有的业务方法进行配置相应的熔断策略信息。
所述线程池容量是用于当出现多个请求时,利用多线程异步的处理熔断,从而可以有效地控制并发数量,并且当达到线程池配置的最大线程数时,则判断该请求是需要进行熔断的业务方法的请求。
当所述线程池容量没有到达最大阀值时,则执行该业务方法,所述业务方法为所述滑动时间窗口内的业务方法,即所述业务方法标志所对应的业务方法。当该业务方法执行完成后,返回该业务方法的执行结果,并对该业务方法再次进行验证,在验证熔断条件时进行实时读取配置在缓存中的所述熔断策略配置信息,基于所述熔断策略配置信息来判断是否达到熔断条件,即判断执行后的业务方法是否再次达到熔断条件,当达到熔断条件时,对该业务方法进行熔断处理,若没有达到熔断条件,则不对该方法进行熔断处理。其中,熔断条件是指该业务方法是否出现异常。其中,异常是指通过获取所述滑动时间窗口内的执行结果中的所述出错比例或者是出错数,通过将获得的所述出错比例与预设出错比例进行比对或者是将出错数与预设的出错数的阀值进行比对,当所述出错比例大于所述预设出错比例时或所述出错数大于预设出错数的阀值时,判断为出现异常。反之,则判断为正常。
其中,则将所述运行过程的子资源与其相关联的子资源熔断是指当滑动时间窗口内的执行结果显示为异常时,在熔断时间内将出现异常的业务方法进行熔断返回,即将所述运行过程的子资源与其相关联的子资源中的异常子资源进行熔断处理。
请参照图5,是本发明第四实施例提供的一种资源处理装置的功能模块示意图。所述装置600包括数据获取单元610、数据拆分单元620、数据设置单元630和数据熔断单元640。
数据获取单元610,用于获取业务资源。
数据拆分单元620,用于将所述业务资源按照不同业务类型进行拆分,得到多个子资源,每个所述子资源关联有所述多个子资源中至少一个除自身外的子资源,且相关联的子资源之间预设有熔断策略配置信息。
数据设置单元630,用于将每个所述子资源分别设置在一个服务器上。
数据熔断单元640,用于当一个所述子资源在运行过程中出现异常时,基于所述运行过程的子资源对应的所述熔断策略配置信息,将所述运行过程的子资源与其相关联的子资源熔断。
请参照图6,是本发明第五实施例提供的一种资源处理装置的功能模块示意图。在本实施例中,所述熔断策略配置信息包括业务方法标志、滑动时间窗口、线程池容量、出错比例、出错数和熔断时间,所述熔断策略配置信息存储在数据库中和/或存储在缓存中,所述装置700包括数据获取单元710、数据拆分单元720、数据设置单元730和数据熔断单元740。
数据获取单元710,用于获取业务资源。
数据拆分单元720,用于将所述业务资源按照不同业务类型进行拆分,得到多个子资源,每个所述子资源关联有所述多个子资源中至少一个除自身外的子资源,且相关联的子资源之间预设有熔断策略配置信息。
数据设置单元730,用于将每个所述子资源分别设置在一个服务器上。
数据熔断单元740,用于当一个所述子资源在运行过程中出现异常时,基于所述运行过程的子资源对应的所述熔断策略配置信息,将所述运行过程的子资源与其相关联的子资源熔断。
其中,所述数据熔断单元740包括数据熔断第一子单元741和数据熔断第二子单元742。
数据熔断第一子单元741,用于基于所述业务方法标志拦截所述业务方法标志所对应的业务方法,所述业务方法为请求所述子资源的方法。
数据熔断第二子单元742,用于基于所述滑动时间窗口内的执行结果,判断是否出现异常,若出现异常时,将所述运行过程的子资源与其相关联的子资源熔断。
请参照图7,是本发明第五实施例提供的一种资源处理装置的功能模块示意图。在本实施例中,所述熔断策略配置信息包括业务方法标志、滑动时间窗口、线程池容量、出错比例、出错数和熔断时间,所述熔断策略配置信息存储在数据库中和/或存储在缓存中,所述装置800包括数据获取单元810、数据拆分单元820、数据设置单元830和数据熔断单元840。
数据获取单元810,用于获取业务资源。
数据拆分单元820,用于将所述业务资源按照不同业务类型进行拆分,得到多个子资源,每个所述子资源关联有所述多个子资源中至少一个除自身外的子资源,且相关联的子资源之间预设有熔断策略配置信息。
数据设置单元830,用于将每个所述子资源分别设置在一个服务器上。
数据熔断单元840,用于当一个所述子资源在运行过程中出现异常时,基于所述运行过程的子资源对应的所述熔断策略配置信息,将所述运行过程的子资源与其相关联的子资源熔断。
其中,所述数据熔断单元840包括数据拦截子单元841和数据熔断子单元842。
数据拦截子单元841,用于基于所述业务方法标志拦截所述业务方法标志所对应的业务方法,所述业务方法为请求所述子资源的方法。
数据熔断子单元842,用于基于所述滑动时间窗口内的执行结果,判断是否出现异常,若没有出现异常时,判断所述线程池容量是否已满,若是,则将所述运行过程的子资源与其相关联的子资源熔断。
其中,所述熔断策略配置信息包括出错比例和滑动时间窗口,根据所述滑动时间窗口内的执行结果中的所述出错比例;将获得的所述出错比例与预设出错比例进行比对,当所述出错比例大于所述预设出错比例时,判定为出现异常。
综上所述,本发明提供的一种资源处理方法及装置,该资源处理方法通过将业务资源按照不同业务类型进行拆分,再将拆分后得到的多个子资源分别放在不同服务器上,从而实现水平扩充,通过设置熔断策略配置信息使得相关联的子资源之间中的一个子资源在运行过程中出现异常时,通过熔断能够有效地保证与该子资源相关联的其他子资源能够正常使用。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。

Claims (10)

1.一种资源处理方法,其特征在于,应用于服务器,所述方法包括:
获取业务资源;
将所述业务资源按照不同业务类型进行拆分,得到多个子资源,每个所述子资源关联有所述多个子资源中至少一个除自身外的子资源,且相关联的子资源之间预设有熔断策略配置信息;
将每个所述子资源分别设置在一个服务器上;
当一个所述子资源在运行过程中出现异常时,基于所述运行过程的子资源对应的所述熔断策略配置信息,将所述运行过程的子资源与其相关联的子资源熔断。
2.根据权利要求1所述的方法,其特征在于,所述熔断策略配置信息包括业务方法标志和滑动时间窗口,所述当一个所述子资源在运行过程中出现异常时,基于所述运行过程的子资源对应的所述熔断策略配置信息,将所述运行过程的子资源与其相关联的子资源熔断的步骤,包括:
基于所述业务方法标志拦截所述业务方法标志所对应的业务方法,所述业务方法为所请求述子资源的方法;
基于所述滑动时间窗口内的执行结果,判断是否出现异常,若出现异常时,将所述运行过程的子资源与其相关联的子资源熔断。
3.根据权利要求1所述的方法,其特征在于,所述熔断策略配置信息包括业务方法标志、滑动时间窗口和线程池容量,所述当一个所述子资源在运行过程中出现异常时,基于所述运行过程的子资源对应的所述熔断策略配置信息,将所述运行过程的子资源与其相关联的子资源熔断的步骤,包括:
基于所述业务方法标志拦截所述业务方法标志所对应的业务方法,所述业务方法为请求所述子资源的方法;
基于所述滑动时间窗口内的执行结果,判断是否出现异常,若没有出现异常时,判断所述线程池容量是否已满,若是,则将所述运行过程的子资源与其相关联的子资源熔断。
4.根据权利要求1所述的方法,其特征在于,所述熔断策略配置信存储在数据库中和/或存储在缓存中。
5.根据权利要求1所述的方法,其特征在于,所述熔断策略配置信息包括出错比例和滑动时间窗口:
获取所述滑动时间窗口内的执行结果中的所述出错比例;
将获得的所述出错比例与预设出错比例进行比对,当所述出错比例大于所述预设出错比例时,判定为出现异常。
6.一种资源处理装置,其特征在于,包括:
数据获取单元,用于获取业务资源;
数据拆分单元,用于将所述业务资源按照不同业务类型进行拆分,得到多个子资源,每个所述子资源关联有所述多个子资源中至少一个除自身外的子资源,且相关联的子资源之间预设有熔断策略配置信息;
数据设置单元,用于将每个所述子资源分别设置在一个服务器上;
数据熔断单元,用于当一个所述子资源在运行过程中出现异常时,基于所述运行过程的子资源对应的所述熔断策略配置信息,将所述运行过程的子资源与其相关联的子资源熔断。
7.根据权利要求6所述的装置,其特征在于,所述熔断策略配置信息包括业务方法标志和滑动时间窗口,所述数据熔断单元包括:
数据熔断第一子单元,用于基于所述业务方法标志拦截所述业务方法标志所对应的业务方法,所述业务方法为请求所述子资源的方法;
数据熔断第二子单元,用于基于所述滑动时间窗口内的执行结果,判断是否出现异常,若出现异常时,将所述运行过程的子资源与其相关联的子资源熔断。
8.根据权利要求6所述的装置,其特征在于,所述熔断策略配置信息包括业务方法标志、滑动时间窗口和线程池容量,所述数据熔断单元包括:
数据拦截子单元,用于基于所述业务方法标志拦截所述业务方法标志所对应的业务方法,所述业务方法为请求所述子资源的方法;
数据熔断子单元,用于基于所述滑动时间窗口内的执行结果,判断是否出现异常,若没有出现异常时,判断所述线程池容量是否已满,若是,则将所述运行过程的子资源与其相关联的子资源熔断。
9.根据权利要求6所述的装置,其特征在于,所述熔断策略配置信息存储在数据库中和/或存储在缓存中。
10.根据权利要求6所述的装置,其特征在于,所述熔断策略配置信息包括出错比例和滑动时间窗口包括:
获取所述滑动时间窗口内的执行结果中的所述出错比例;
将获得的所述出错比例与预设出错比例进行比对,当所述出错比例大于所述预设出错比例时,判定为出现异常。
CN201610941531.XA 2016-11-01 2016-11-01 一种资源处理方法及装置 Active CN108022028B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610941531.XA CN108022028B (zh) 2016-11-01 2016-11-01 一种资源处理方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610941531.XA CN108022028B (zh) 2016-11-01 2016-11-01 一种资源处理方法及装置

Publications (2)

Publication Number Publication Date
CN108022028A true CN108022028A (zh) 2018-05-11
CN108022028B CN108022028B (zh) 2021-02-26

Family

ID=62070660

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610941531.XA Active CN108022028B (zh) 2016-11-01 2016-11-01 一种资源处理方法及装置

Country Status (1)

Country Link
CN (1) CN108022028B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109240765A (zh) * 2018-08-28 2019-01-18 中国联合网络通信集团有限公司 服务资源的熔断方法、装置、设备及计算机可读存储介质
CN109561133A (zh) * 2018-10-23 2019-04-02 深圳壹账通智能科技有限公司 业务处理方法、装置、设备及计算机可读存储介质
CN110390529A (zh) * 2019-07-23 2019-10-29 中国工商银行股份有限公司 交易智能路由方法、装置、设备及存储介质
CN113676434A (zh) * 2020-05-13 2021-11-19 华为技术有限公司 网络资源的熔断方法、装置、电子设备及存储介质

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102843418A (zh) * 2012-07-03 2012-12-26 广东电网公司信息中心 一种资源调度系统
CN103559118A (zh) * 2013-10-12 2014-02-05 福建亿榕信息技术有限公司 一种基于aop与注解信息系统的安全审计方法
CN104731663A (zh) * 2015-03-31 2015-06-24 北京奇艺世纪科技有限公司 任务处理方法及系统
US20150347271A1 (en) * 2014-05-30 2015-12-03 Apple Inc. Queue debugging using stored backtrace information
CN105354126A (zh) * 2015-10-13 2016-02-24 金蝶软件(中国)有限公司 监控页面脚本文件中异常的方法和装置
CN105450769A (zh) * 2015-12-10 2016-03-30 浪潮通用软件有限公司 一种文件传输的方法及装置
CN105446801A (zh) * 2014-06-23 2016-03-30 阿里巴巴集团控股有限公司 分布式系统中的任务处理方法和装置
US20160170768A1 (en) * 2014-12-15 2016-06-16 International Business Machines Corporation Sharing program interrupt logic in a multithreaded processor
CN106033439A (zh) * 2015-03-13 2016-10-19 阿里巴巴集团控股有限公司 一种分布式事务处理方法及系统

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102843418A (zh) * 2012-07-03 2012-12-26 广东电网公司信息中心 一种资源调度系统
CN103559118A (zh) * 2013-10-12 2014-02-05 福建亿榕信息技术有限公司 一种基于aop与注解信息系统的安全审计方法
US20150347271A1 (en) * 2014-05-30 2015-12-03 Apple Inc. Queue debugging using stored backtrace information
CN105446801A (zh) * 2014-06-23 2016-03-30 阿里巴巴集团控股有限公司 分布式系统中的任务处理方法和装置
US20160170768A1 (en) * 2014-12-15 2016-06-16 International Business Machines Corporation Sharing program interrupt logic in a multithreaded processor
CN106033439A (zh) * 2015-03-13 2016-10-19 阿里巴巴集团控股有限公司 一种分布式事务处理方法及系统
CN104731663A (zh) * 2015-03-31 2015-06-24 北京奇艺世纪科技有限公司 任务处理方法及系统
CN105354126A (zh) * 2015-10-13 2016-02-24 金蝶软件(中国)有限公司 监控页面脚本文件中异常的方法和装置
CN105450769A (zh) * 2015-12-10 2016-03-30 浪潮通用软件有限公司 一种文件传输的方法及装置

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
BEARCHITECT: ""数据字典以及业务标识字段,利用dozer和拦截器统一翻译回显页面"", 《HTTPS://BLOG.CSDN.NET/S8460049/ARTICLE/DETAILS/51753508》 *
HALLGREN 等,: "A principled approach to operating system construction in Haskell", 《ACM SIGPLAN NOTICES》 *
YBAK: ""防雪崩利器:熔断器Hystrix的原理与使用"", 《HTTPS://SEGMENTFAULT.COM/A/1190000005988895?UTM_SOURCE=TAG-NEWEST》 *
谢鹏: "分布式数据库存储子系统设计与实现", 《中国优秀硕士学位论文全文数据库-信息科技辑》 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109240765A (zh) * 2018-08-28 2019-01-18 中国联合网络通信集团有限公司 服务资源的熔断方法、装置、设备及计算机可读存储介质
CN109561133A (zh) * 2018-10-23 2019-04-02 深圳壹账通智能科技有限公司 业务处理方法、装置、设备及计算机可读存储介质
CN110390529A (zh) * 2019-07-23 2019-10-29 中国工商银行股份有限公司 交易智能路由方法、装置、设备及存储介质
CN110390529B (zh) * 2019-07-23 2022-03-29 中国工商银行股份有限公司 交易智能路由方法、装置、设备及存储介质
CN113676434A (zh) * 2020-05-13 2021-11-19 华为技术有限公司 网络资源的熔断方法、装置、电子设备及存储介质
CN113676434B (zh) * 2020-05-13 2023-03-24 华为技术有限公司 网络资源的熔断方法、装置、电子设备及存储介质

Also Published As

Publication number Publication date
CN108022028B (zh) 2021-02-26

Similar Documents

Publication Publication Date Title
US11614990B2 (en) Automatic correlation of dynamic system events within computing devices
CN108022028A (zh) 一种资源处理方法及装置
EP3841730B1 (en) Identifying device types based on behavior attributes
CN107168841A (zh) 一种移动设备的远程测试方法和装置
CN106610888A (zh) 电源供应单元、测试方法以及非暂态计算机可读存储介质
US8649270B2 (en) Dynamic network configuration
CN106789386A (zh) 检测通信总线上错误的方法以及用于网络系统的检错器
CN109542786A (zh) 可视化测试方法及装置
CN204425370U (zh) 一种fc交换机监控电路
CN106034054A (zh) 冗余访问控制列表acl规则文件检测方法和装置
CN107590016A (zh) 掉电重启识别方法及装置
EP3748913A1 (en) Link bandwidth utilization rate acquisition method and device, and terminal
CN110839007B (zh) 一种云网络安全处理方法、设备和计算机存储介质
CN109547274A (zh) 一种维护板切换方法、装置及第一网络设备
CN109445975A (zh) 异常处理方法、逻辑装置及成员设备
CN108616505A (zh) 信息封装方法、装置及通信设备
CN108205487A (zh) 一种监控浏览器性能的方法、装置及用户终端
CN110943887A (zh) 探针调度方法、装置、设备和存储介质
CN109213566B (zh) 一种虚拟机迁移的方法、装置和设备
CN109635552A (zh) 电子设备身份信息验证方法与装置
CN111045757A (zh) It资源运行状态的可视化展示系统和方法及存储介质
CN108449338A (zh) 一种电影数据处理方法及装置
CN113568932A (zh) 一种缓存数据管理方法、系统及存储介质
CN114531380A (zh) 一种镜像质量核查方法、装置及电子设备
DE102017218904A1 (de) Dynamisches, skript-fähiges Routing

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