微服务访问调度方法、装置、介质及电子设备制造方法及图纸

技术编号:20621980 阅读:25 留言:0更新日期:2019-03-20 14:10
本发明专利技术涉及云计算技术领域,揭示了一种微服务访问调度方法、装置、介质及电子设备。该方法包括:接收微服务对资源的访问请求,所述访问请求包括与所述资源对应的资源标识,所述资源具有对应的队列;将所述访问请求发送到与所述访问请求中的资源标识对应的队列;对所述队列中的所述访问请求按照预定规则排序;在所述访问请求在所述队列中排在最前面且该资源未加锁的情况下,使发出所述访问请求的微服务访问所述资源,其中所述微服务在访问所述资源时对所述资源加锁,访问结束时对所述资源解锁。在云计算领域,微服务是重要实现手段。此方法下,微服务访问资源是按照一定顺序执行的,减少了微服务访问的随机性,增强了微服务访问资源的可预期性。

Microsoft Access Scheduling Method, Device, Media and Electronic Equipment

The invention relates to the field of cloud computing technology, and discloses a micro service access scheduling method, device, medium and electronic equipment. The method includes: receiving access requests from micro services to resources, the access requests include resource identities corresponding to the resources, the resources have corresponding queues; sending the access requests to queues corresponding to the resource identities in the access requests; sorting the access requests in the queues according to predetermined rules; and the access requests in the queues have corresponding queues. In the case that the resource is at the top of the list and the resource is unlocked, the microservice issuing the access request accesses the resource. The microservice locks the resource when accessing the resource and unlocks the resource at the end of the access. In the field of cloud computing, micro-service is an important means of implementation. Under this method, access resources of micro-services are executed in a certain order, which reduces the randomness of access to micro-services and enhances the predictability of access resources of micro-services.

【技术实现步骤摘要】
微服务访问调度方法、装置、介质及电子设备
本专利技术涉及云计算
,特别涉及一种微服务访问调度方法、装置、介质及电子设备。
技术介绍
在云计算领域,为了解决单体架构存在复杂度高和扩展性差的缺点,微服务应运而生。微服务是一个或一组相对较小且独立的功能单元。当一个微服务正在访问一个资源时,如果另一个微服务同时访问该资源,会造成访问冲突,因为如果一个微服务在修改该资源,而另一个微服务正在读取该资源的话就会读取到错误的值。在现有技术的实现中,微服务访问资源时会对该资源加锁,此时其他微服务无法访问该资源,等访问结束后,微服务就会对该资源解锁,其他微服务就能够访问这个资源。当一个微服务访问资源时,其他微服务想要访问同一资源都会因为该资源被加锁而遭到拒绝。然而,等微服务对该资源访问完毕并解锁该资源后,如果哪个微服务此时正好要访问该资源,它就可以锁住该资源,而之前被拒绝的微服务还是无法访问该资源。现有技术的缺陷在于,在前访问的微服务解锁资源后,在后访问的微服务按照随机的顺序访问该资源,是按照资源被解锁后谁在先凑巧第一个访问该资源的顺序而不是对该资源需求的先后顺序进行访问,可能造成最先访问该资源的微服务等很久才能访问的情况,微服务访问的随机性强,微服务访问资源的可预期性低。
技术实现思路
在云计算领域,为了解决相关技术中存在的微服务访问资源的可预期性低的技术问题,本专利技术提供了一种微服务访问调度方法、装置、介质及电子设备。根据本申请的一方面,提供了一种微服务访问调度方法,所述方法包括:接收微服务对资源的访问请求,所述访问请求包括与所述资源对应的资源标识,所述资源具有对应的队列;将所述访问请求发送到与所述访问请求中的资源标识对应的队列;对所述队列中的所述访问请求按照预定规则排序;在所述访问请求在所述队列中排在最前面且该资源未加锁的情况下,使发出所述访问请求的微服务访问所述资源,其中所述微服务在访问所述资源时对所述资源加锁,访问结束时对所述资源解锁。根据本申请的另一方面,提供了一种微服务访问调度装置,所述装置包括:接收模块,被配置为接收微服务对资源的访问请求,所述访问请求包括与所述资源对应的资源标识,所述资源具有对应的队列;发送模块,被配置为将所述访问请求发送到与所述访问请求中的资源标识对应的队列;排序模块,被配置为对所述队列中的所述访问请求按照预定规则排序;控制模块,被配置为在所述访问请求在所述队列中排在最前面且该资源未加锁的情况下,使发出所述访问请求的微服务访问所述资源,其中所述微服务在访问所述资源时对所述资源加锁,访问结束时对所述资源解锁。根据本申请的另一方面,提供了一种计算机可读程序介质,其存储有计算机程序指令,当所述计算机程序指令被计算机执行时,使计算机执行如前所述的方法。根据本申请的另一方面,提供了一种电子设备,所述电子设备包括:处理器;存储器,所述存储器上存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,实现如前所述的方法。本专利技术的实施例提供的技术方案可以包括以下有益效果:本专利技术所提供的微服务访问调度方法包括如下步骤,接收微服务对资源的访问请求,所述访问请求包括与所述资源对应的资源标识,所述资源具有对应的队列;将所述访问请求发送到与所述访问请求中的资源标识对应的队列;对所述队列中的所述访问请求按照预定规则排序;在所述访问请求在所述队列中排在最前面且该资源未加锁的情况下,使发出所述访问请求的微服务访问所述资源,其中所述微服务在访问所述资源时对所述资源加锁,访问结束时对所述资源解锁。此方法下,微服务访问资源是按照一定顺序执行的,减少了微服务访问的随机性,增强了微服务访问资源的可预期性。应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本专利技术。附图说明此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本专利技术的实施例,并与说明书一起用于解释本专利技术的原理。图1是根据一示例性实施例示出的微服务访问资源的示意图;图2是根据一示例性实施例示出的一种微服务访问调度方法的流程图;图3是根据图2对应实施例示出的一实施例的步骤220和步骤260之间步骤以及步骤260细节的流程图;图4是根据图3对应实施例示出的步骤261的细节流程图;图5是根据一示例性实施例示出的一种微服务访问调度装置的框图;图6是根据一示例性实施例示出的一种实现上述微服务访问调度方法的电子设备示例框图;图7是根据一示例性实施例示出的一种实现上述微服务访问调度方法的计算机可读存储介质。具体实施方式这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本专利技术相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本专利技术的一些方面相一致的装置和方法的例子。此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。本公开首先提供了一种微服务访问调度方法。本专利技术的实施环境可以是便携移动设备,例如智能手机、平板电脑、笔记本电脑等,也可以是固定式设备,例如,计算机设备、现场终端、台式电脑、服务器、工作站等。图1是根据一示例性实施例示出的微服务访问资源的示意图。如图1所示,一个微服务可以访问资源,每个资源都有对应的队列,队列可以接收微服务对该资源的访问请求。微服务是一种软件架构,是一种对软件整体与部分的抽象描述。资源可以是硬件资源、软件资源、电子数据资源或者外设资源等,这些资源可以被有需求的微服务访问。图2是根据一示例性实施例示出的一种微服务访问调度方法的流程图。如图2所示,此方法包括以下步骤:步骤210,接收微服务对资源的访问请求,所述访问请求包括与所述资源对应的资源标识,所述资源具有对应的队列。在一个实施例中,微服务在执行任务时如果需要调用资源的内容,自动触发微服务对资源的访问请求。在一个实施例中,对资源封装有处理微服务指令的接口,当微服务要访问资源时,向该接口发出访问的指令,该接口将该指令转换成访问请求。在一个实施例中,在微服务对资源进行访问时,如果资源正在更新,则资源停止更新,当访问结束,允许资源进行更新。如上所述,由于有许多资源,所以微服务发出访问请求时访问请求中需要有与资源对应的资源标识,从而确定微服务的访问请求要求访问哪个资源。步骤220,将所述访问请求发送到与所述访问请求中的资源标识对应的队列。因为可能有不止一个微服务要在相同的时间区间内访问相同资源,所以要为每个资源设置一个队列,排在队列前面的访问请求先访问,排在队列后面的请求后访问。这样做的好处在于,避免了微服务访问顺序混乱、没有预期性的问题。步骤260,对所述队列中的所述访问请求按照预定规则排序。队列中的访问请求要按照合理的方式进行排序,从而为各个请求的公平排队提供了可能。在一个示例性实施例中,该预定规则包括:将所述队列中的所述访问请求按照所述时间戳的先后顺序进行排序。这样做的好处在于,按照先来后到的原则可以在很大程度上保证了微服务访问资源顺序的公平性。步骤270,在所述访问请求在所述队列中排在最本文档来自技高网...

【技术保护点】
1.一种微服务访问调度方法,其特征在于,所述方法包括:接收微服务对资源的访问请求,所述访问请求包括与所述资源对应的资源标识,所述资源具有对应的队列;将所述访问请求发送到与所述访问请求中的资源标识对应的队列;对所述队列中的所述访问请求按照预定规则排序;在所述访问请求在所述队列中排在最前面且该资源未加锁的情况下,使发出所述访问请求的微服务访问所述资源,其中所述微服务在访问所述资源时对所述资源加锁,访问结束时对所述资源解锁。

【技术特征摘要】
1.一种微服务访问调度方法,其特征在于,所述方法包括:接收微服务对资源的访问请求,所述访问请求包括与所述资源对应的资源标识,所述资源具有对应的队列;将所述访问请求发送到与所述访问请求中的资源标识对应的队列;对所述队列中的所述访问请求按照预定规则排序;在所述访问请求在所述队列中排在最前面且该资源未加锁的情况下,使发出所述访问请求的微服务访问所述资源,其中所述微服务在访问所述资源时对所述资源加锁,访问结束时对所述资源解锁。2.根据权利要求1所述的方法,其特征在于,所述访问请求包括与所述访问请求对应的时间戳,所述预定规则具体包括:将所述队列中的所述访问请求按照所述时间戳的先后顺序进行排序。3.根据权利要求2所述的方法,其特征在于,所述将所述访问请求发送到与所述访问请求中的资源标识对应的队列包括:如果所述访问请求中的资源标识有多个,将所述访问请求发送到多个资源标识中最小资源标识对应的队列;所述微服务在访问所述资源时对所述资源加锁包括:如果微服务发出的访问请求中的资源标识有多个,按照所述多个资源标识从小到大的顺序对资源加锁。4.根据权利要求3所述的方法,其特征在于,在按照所述多个资源标识从小到大的顺序对资源加锁时,每次对一个资源加锁前访问请求在队列中排序具体包括:当所述微服务对与最小资源标识对应的资源加锁后,将所述访问请求发送到多个资源标识中没被所述微服务加锁的资源的资源标识里最小资源标识对应的队列;所述将所述队列中的所述访问请求按照所述时间戳的先后顺序进行排序包括:对所有访问请求按照时间戳的先后顺序进行排序,对有排队时间戳的访问请求按照排队时间戳的先后顺序进行排序,其中在队列中有排队时间戳的访问请求排在所有没有排队时间戳的访问请求的前面,所述排队时间戳为要访问多个资源的微服务的访问请求在要访问的多个资源中一个或多个资源被该微服务加锁后发送到多个资源标识中没被所述微服务加锁的资源的资源标识里最小资源标识对应的队列的时间。5.根据权利要求1所述的方法,其特征在于,所述访问请求包括与所述访问...

【专利技术属性】
技术研发人员:罗厚付
申请(专利权)人:平安科技深圳有限公司
类型:发明
国别省市:广东,44

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

1