一种业务请求处理方法和装置制造方法及图纸

技术编号:16605395 阅读:24 留言:0更新日期:2017-11-22 15:09
本申请提供了一种业务请求处理方法和装置,其中,该方法包括:提取业务请求中的操作指令和所需资源;获取所述所需资源上的既有操作指令,其中,所述既有操作指令包括:正在执行的操作指令和/或等待执行的操作指令;确定所述业务请求中的操作指令与所述既有操作指令之间的冲突关系;根据确定的冲突关系确定是否允许所述业务请求执行。利用本申请实施例提供的技术方案,可以解决现有技术中共用同一资源的业务只能采用串行的方式执行而导致的业务总流程运行时长过长,处理效率低下的技术问题,达到了有效提高业务处理效率的技术效果。

Method and device for processing service request

This application provides a service request processing method and device, wherein, the method comprises the following steps: extracting the service request in the operating instructions and the required resources; obtaining the resources required on both operating instructions, including the existing operating instructions include: operating instructions and / or instructions for execution is executed; determine the service request in the operating instructions with the existing conflict between the conflict according to the operation instruction; determine the relationship to determine whether to allow the service request execution. By using the technical scheme provided by the embodiment of the application, can solve the existing technology of the Communist Party of China with the same resource business can only be used to execute serial mode business process operation and lead to a long long time, deal with the technical problems of low efficiency, to improve the effect of treatment efficiency of the technology business.

【技术实现步骤摘要】
一种业务请求处理方法和装置
本申请属于计算机网络
,尤其涉及一种业务请求处理方法和装置。
技术介绍
随着网络技术的不断发展,通过互联网处理的业务也越来越多。在目前的服务器产品,业务规模化程度也越来越高,在业务规模化后,并行的业务操作变得很常见,有些业务操作并行是允许的,有些业务操作是需要排队的,有些业务操作是需要拒绝的。例如:虚拟机A在挂载磁盘B时,虚拟机A和磁盘B就是资源实体,挂载磁盘(指令)是一种业务操作,这种业务操作进行时,虚拟机A上更换操作系统业务(指令)不允许进行,续费业务(指令)允许进行,磁盘B上磁盘扩容业务(指令)不允许进行,续费业务允许进行。目前对于这种存在业务冲突的情况,一般采用的处理方式是在资源实体上增加互斥锁,从而使得资源实体上有一项业务操作在执行时,会加锁,然后就不再允许其它的写操作。这种方式会导致一个资源同一时刻只能有一种业务操作能进行,然而,在实际情况中,一个资源在进行一个业务操作时,其它的业务操作有的是能并行的,有的是不能并行的,并行操作可以有效的业务操作所需执行的时间,如果完全抛弃可以并行执行的业务操作,显然会导致业务操作的总时长被延长。例如,如图1和图2所示,资源R1上能进行业务操作A、业务操作B和业务操作C,业务操作A、业务操作B和业务操作C均需要5分钟完成,如果使用互斥锁操作,则整个业务操作A、业务操作B和业务操作C需要顺序完成,总共需要15分钟。经过分析后发现,业务操作A与业务操作B和C不能并行执行,但是业务操作B和业务操作C是可以并行执行的,如果仅采用互斥锁的方式,显然会增加整个业务流程的运行时长。针对现有技术中共用同一资源的业务只能采用串行的方式执行而导致的业务总流程运行时长过长的技术问题,目前尚未提出有效的解决方案。
技术实现思路
本申请目的在于提供一种业务请求处理方法和装置,以有效提高业务处理效率。本申请提供一种业务请求处理方法和装置是这样实现的:一种业务请求处理方法,所述方法包括:提取业务请求中的操作指令和所需资源;获取所述所需资源上的既有操作指令,其中,所述既有操作指令包括:正在执行的操作指令和/或等待执行的操作指令;确定所述业务请求中的操作指令与所述既有操作指令之间的冲突关系;根据确定的冲突关系确定是否允许所述业务请求执行。一种业务请求处理装置,所述装置包括:提取模块,用于提取业务请求中的操作指令和所需资源;获取模块,用于获取所述所需资源上的既有操作指令,其中,所述既有操作指令包括:正在执行的操作指令和/或等待执行的操作指令;第一确定模块,用于确定所述业务请求中的操作指令与所述既有操作指令之间的冲突关系;第二确定模块,用于根据确定的冲突关系确定是否允许所述业务请求执行。本申请提供的业务请求处理方法和装置,为了避免多个业务共用同一资源造成资源冲突情况的发生,不是采用在资源上设置互斥锁的方式,而是提取业务请求中的操作指令和所需资源,然后确定业务请求与所需资源上的既有操作指令是否存在冲突,以确定是否允许业务请求执行,即,先判断业务请求所需资源上是否已经有业务在执行,如果没有自然是可以直接执行当前的业务请求的,如果有业务执行,那么就确定资源上正在执行的资源与当前请求的业务之间是否构成冲突,如果不构成冲突,那么可以并行执行,如果构成冲突,则无法并行执行,从而在保证多个业务共用同一资源时不会造成资源冲突,又可以使得整个业务流程所需时间尽可能缩短,从而解决了现有技术中共用同一资源的业务只能采用串行的方式执行而导致的业务总流程运行时长过长,处理效率低下的技术问题,达到了有效提高业务处理效率的技术效果。附图说明为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1是本申请实施例的串行处理示意图;图2是本申请实施例的并行处理示意图;图3是本申请提供的业务请求处理方法一种实施例的方法流程图;图4是本申请提供的业务请求处理系统的模块示意图;图5是本申请提供的上层业务发起冲突检测的流程示意图;图6是本申请提供的指令调度流程示意图;图7是本申请提供的业务请求处理装置一种实施例的模块结构示意图。具体实施方式为了使本
的人员更好地理解本申请中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。下面结合附图对本申请所述的业务请求处理方法和装置进行详细的说明。图3是本申请提出的业务请求处理方法的一种实施例的方法流程图。虽然本申请提供了如下述实施例或附图所示的方法操作步骤或装置结构,但基于常规或者无需创造性的劳动在所述方法或装置中可以包括更多或者更少的操作步骤或模块结构。在逻辑性上不存在必要因果关系的步骤或结构中,这些步骤的执行顺序或装置的模块结构不限于本申请实施例提供的执行顺序或模块结构。所述的方法或模块结构的在实际中的装置或终端产品执行时,可以按照实施例或者附图所示的方法或模块结构连接进行顺序执行或者并行执行(例如并行处理器或者多线程处理的环境)。在对本申请实施例的业务请求处理方法具体说明之前,先对几个常规性概念解释如下,以便更好地理解本申请:1)资源:抽象的业务领域概念,例如:虚拟机,磁盘等都可以是资源。2)指令:抽象的业务操作概念,例如:更换操作系统等。3)关系:指令之间的关系,在本申请中关系可以有并行,互斥,等待等。4)资源实体:指代具体的资源,例如:虚拟机A,磁盘B。5)指令实例:一次具体的操作,例如:虚拟机A发生的一次更换操作系统指令。6)互斥锁:是一种信号量,用来防止两个进程或线程在同一时刻访问相同的共享资源。然而,值得注意的是,上述对名词进行解释的时候主要是以虚拟机和磁盘作为资源进行举例说明的,本申请不限于此,还可以是其它的资源。具体的如图3所示,本申请提供的业务请求处理方法的一种实施例可以包括:S1:提取业务请求中的操作指令和所需资源;所谓的业务请求就是一次业务操作的请求,例如:当资源为虚拟机和磁盘时,请求挂磁盘,这个请求挂磁盘就是业务请求。在接收到业务请求后,为了判断该业务请求是否可以被执行,即,是否存在冲突,可以从资源的角度出发,即,判断其所需的资源是否空闲,或者是对于非空闲的资源,上面既有的操作指令是否能和业务请求中的操作指令并行存在,如果可以并行存在,那么该业务请求也是可以执行的。也就是说,可以先确定所需资源是否空闲,如果所需资源非空闲,则获取所需资源上的既有操作指令,如果空闲,那么可以直接执行该业务请求,因为不存在资源冲突的问题。因此,在获取到业务请求后,就可以提取出其中的操作指令和所需资源,即,从该业务请求中提取中指令中所携带的操作,以及执行该操作所需的资源,以便从资源的角度出去确定该业务请求是否可以被执行。S2:获取所述所需资源上的既有操作指令,其中,所述既有操作指令包括:正在执行的操作指令和/或等待本文档来自技高网
...
一种业务请求处理方法和装置

【技术保护点】
一种业务请求处理方法,其特征在于,所述方法包括:提取业务请求中的操作指令和所需资源;获取所述所需资源上的既有操作指令,其中,所述既有操作指令包括:正在执行的操作指令和/或等待执行的操作指令;确定所述业务请求中的操作指令与所述既有操作指令之间的冲突关系;根据确定的冲突关系确定是否允许所述业务请求执行。

【技术特征摘要】
1.一种业务请求处理方法,其特征在于,所述方法包括:提取业务请求中的操作指令和所需资源;获取所述所需资源上的既有操作指令,其中,所述既有操作指令包括:正在执行的操作指令和/或等待执行的操作指令;确定所述业务请求中的操作指令与所述既有操作指令之间的冲突关系;根据确定的冲突关系确定是否允许所述业务请求执行。2.根据权利要求1所述的方法,其特征在于,确定所述业务请求中的操作指令与所述既有操作指令之间的冲突关系,包括:获取所述既有操作指令和所述所需资源的预配置的指令关系;根据所述预配置的指令关系,确定所述业务请求中的操作指令与所述既有操作指令之间的冲突关系。3.根据权利要求2所述的方法,其特征在于,所述预配置的指令关系表示为:所述既有操作指令作用于所述所需资源时,所述业务请求中的操作指令的冲突关系。4.根据权利要求3所述的方法,其特征在于,所述冲突关系包括以下之一:允许并行、互斥拒绝和等待;相应的,根据确定的冲突关系确定是否允许所述业务请求执行,包括:当所述冲突关系为允许并行时,确定允许所述业务请求并行执行;当所述冲突关系为互斥拒绝时,确定拒绝所述业务请求执行;当所述冲突关系为等待时,确定所述业务请求排队等待执行。5.根据权利要求2所述的方法,其特征在于,在所述预配置的指令关系有多条,每一条预配置的指令关系对应一个目标指令的情况下,根据所述预配置的指令关系,确定所述业务请求中的操作指令与所述既有操作指令之间的冲突关系,包括:将所述业务请求中的操作指令与所述多条预配置的指令关系中的目标指令进行匹配,将与所述业务请求中的操作指令相匹配的目标指令对应的指令关系作为所述业务请求中的操作指令与所述既有操作指令之间的冲突关系。6.根据权利要求1所述的方法,其特征在于:在所述业务请求所需资源有多个的情况下,获取所述所需资源上的既有操作指令,包括:逐一获取多个所需资源中各个所需资源上的既有操作指令;和/或,在所述所需资源上的既有操作指令有多个的情况下,确定所述业务请求中的操作指令与所述既有操作指令之间的冲突关系,包括:逐...

【专利技术属性】
技术研发人员:王星星刘义
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛,KY

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1