CN113485758A - 微服务发布方法、装置及电子设备、存储介质 - Google Patents

微服务发布方法、装置及电子设备、存储介质 Download PDF

Info

Publication number
CN113485758A
CN113485758A CN202010188591.5A CN202010188591A CN113485758A CN 113485758 A CN113485758 A CN 113485758A CN 202010188591 A CN202010188591 A CN 202010188591A CN 113485758 A CN113485758 A CN 113485758A
Authority
CN
China
Prior art keywords
micro
service
microservice
version
flow control
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.)
Pending
Application number
CN202010188591.5A
Other languages
English (en)
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.)
China Mobile Communications Group Co Ltd
China Mobile Group Fujian Co Ltd
Original Assignee
China Mobile Communications Group Co Ltd
China Mobile Group Fujian Co 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 China Mobile Communications Group Co Ltd, China Mobile Group Fujian Co Ltd filed Critical China Mobile Communications Group Co Ltd
Priority to CN202010188591.5A priority Critical patent/CN113485758A/zh
Publication of CN113485758A publication Critical patent/CN113485758A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44536Selecting among different versions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/63Routing a service request depending on the request content or context

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Stored Programmes (AREA)

Abstract

本申请公开了一种微服务发布方法、装置及电子设备、存储介质,涉及网络业务技术领域。该微服务发布方法,通过接收第一微服务发送的业务访问请求,业务访问请求携带有发布版本参考因子以及微服务调用路径;如果预存储有流控策略且发布版本参考因子满足流控策略中的设定条件,则从与第一微服务存在依赖关系的至少两个不同版本的第二微服务中,确定待发布的最新版本的第二微服务;对最新版本的第二微服务进行发布;将业务访问请求传输至与最新版本的第二微服务存在依赖关系的第三微服务,从而实现后续的最新版本的微服务的调用,最终更准确地完成整个微服务调用链的微服务发布。

Description

微服务发布方法、装置及电子设备、存储介质
技术领域
本申请涉及网络业务技术领域,尤其涉及一种微服务发布方法、装置及电子设备、存储介质。
背景技术
微服务是一个新兴的软件架构,即把一个大型的单个应用程序和服务拆分为数十个支持微服务,微服务可以扩展单个组件而不是整个的应用程序堆栈,从而满足服务等级协议。基于微服务的上述优点,微服务逐渐成为当前的热门话题,并且被越来越多的企业推广。在微服务更新时,常采用灰度发布的形式对微服务进行发布。
在现有技术中,在从用户终端的页面发起一个业务请求后,会伴随多个微服务的调用,即生成一条微服务调用链,可以通过转发器做到精确的通过检测到的调用请求头,匹配在微服务调用链的首个新版本的微服务即可。然而,在多数情况下,需要发布的新版本的微服务不是在调用链的最顶端,通过上述方式则不能实现调用链所有的新版本的微服务的灰度发布。因此,如何有效实现整个调用链的新版本的微服务灰度发布成为亟需解决的技术问题。
发明内容
第一方面,本申请实施例提供了一种微服务发布方法,所述方法包括:
接收第一微服务发送的业务访问请求,其中,所述业务访问请求携带有发布版本参考因子以及微服务调用路径;
如果预存储有流控策略且所述发布版本参考因子满足所述流控策略中的设定条件,则从与所述第一微服务存在依赖关系的至少两个不同版本的第二微服务中,确定待发布的最新版本的第二微服务;
对所述最新版本的第二微服务进行发布;
根据所述微服务调用路径将所述业务访问请求传输至与所述最新版本的第二微服务存在依赖关系的第三微服务。
第二方面,本申请实施例还提供了一种微服务发布装置,所述装置包括:
信息接收单元,被配置成接收第一微服务发送的业务访问请求,其中,所述业务访问请求携带有发布版本参考因子以及微服务调用路径;
微服务确定单元,被配置成如果预存储有流控策略且所述发布版本参考因子满足所述流控策略中的设定条件,则从与所述第一微服务存在依赖关系的至少两个不同版本的第二微服务中,确定待发布的最新版本的第二微服务;
微服务发布单元,被配置成对所述最新版本的第二微服务进行发布;
信息发送单元,被配置成根据所述微服务调用路径将所述业务访问请求传输至与所述最新版本的第二微服务存在依赖关系的第三微服务。
第三方面,本申请实施例还提供了一种电子设备,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现本申请实施例第一方面所述的微服务发布方法。
第四方面,本申请实施例还提供了一种存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行本申请实施例第一方面所述的微服务发布方法。
本申请实施例采用的上述至少一个技术方案能够达到以下有益效果:通过接收第一微服务发送的业务访问请求,业务访问请求携带有发布版本参考因子以及微服务调用路径;如果预存储有流控策略且发布版本参考因子满足流控策略中的设定条件,则从与第一微服务存在依赖关系的至少两个不同版本的第二微服务中,确定待发布的最新版本的第二微服务;对最新版本的第二微服务进行发布;将业务访问请求传输至与最新版本的第二微服务存在依赖关系的第三微服务,从而实现了对于没有位于微服务调用链头部的最新版本的微务的调用,同时也可以根据微服务调用路径将业务访问请求发送至第三微服务,第三微服务也可以根据发布版本参考因子对第三微服务进行发布,由此类推,从而可以实现后续的最新版本的微服务的调用,最终更准确地完成整个微服务调用链的微服务发布。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本申请一种实施例提供的微服务发布方法的流程图;
图2为本申请一种实施例提供的微服务灰度发布系统的交互示意图;
图3为本申请一种实施例提供的微服务发布方法的流程图;
图4为本申请一种实施例提供的微服务发布方法的流程图;
图5为本申请一种实施例提供的微服务发布装置的功能模块框图;
图6为本申请一种实施例提供的微服务发布装置的功能模块框图;
图7为本申请一种实施例提供的电子设备的电路连接框图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
以下结合附图,详细说明本申请各实施例提供的技术方案。
请参阅图1,本申请实施例提供了一种微服务发布方法,应用于电子设备。如图2所示,电子设备可以为第二服务器202,第二服务器202应用于微服务灰度发布系统,微服务灰度发布系统还包括安装有第一微服务的第一服务器201、安装有第三微服务的第三服务器203、管理终端206、配置中心205、用户终端200以及依次通信连接的安装有微服务的第四服务器204。其中,用户终端200、第一服务器201、第二服务器202、第三服务器203以及其中一个第四服务器204依次通信连接,第一服务器201、第二服务器202、第三服务器203以及第四服务器204均与配置中心205通信连接,配置终端与管理终端206通信连接。所述方法包括:
S11:接收第一微服务发送的业务访问请求,其中,业务访问请求携带有发布版本参考因子以及微服务调用路径。
具体地,用户终端200可以发送业务访问请求至第一服务器201的第一微服务,第一微服务根据业务访问请求、预存储的流控策略进行微服务发布后,向第二服务器202发送业务访问请求。其中,业务访问请求可以为但不限于账目查询请求、商品搜索请求等等,在此不做限制,业务访问请求需要调用一个微服务链完成上述的业务访问。其中,微服务链可以为存在依赖关系的第一微服务、第二微服务、第三微服务以及多个第四微服务。
S12:判断预存储有流控策略且发布版本参考因子是否满足流控策略中的设定条件,如果是,则执行S13,可选地,如果否,则执行S31。
当预存储有流控策略且发布版本参考因子满足流控策略中的设定条件时,说明业务访问请求想要访问最新版本的第二微服务。
S13:从与第一微服务存在依赖关系的至少两个不同版本的第二微服务中,确定待发布的最新版本的第二微服务。
S14:对最新版本的第二微服务进行发布。
例如,第二微服务包括有多个版本,比如,版本1.0、版本2.0、版本3.0、版本4.0,其中,版本4.0为最新的版本,则选择版本4.0的第二微服务进行发布。
S15:将业务访问请求传输至与最新版本的第二微服务存在依赖关系的第三微服务。
第三微服务也可以根据业务访问请求、预存储的流控策略进行第三微服务发布,进行微服务发布后,向第四服务器204发送业务访问请求,由此类推,直到最后一个第四服务器204,从而最终更准确地完成整个微服务调用链的微服务发布。
本申请提供的微服务发布方法,通过接收第一微服务发送的业务访问请求,业务访问请求携带有发布版本参考因子以及微服务调用路径;如果预存储有流控策略且发布版本参考因子满足流控策略中的设定条件,则从与第一微服务存在依赖关系的至少两个不同版本的第二微服务中,确定待发布的最新版本的第二微服务;对最新版本的第二微服务进行发布;将业务访问请求传输至与最新版本的第二微服务存在依赖关系的第三微服务,从而实现了对于没有位于微服务调用链头部的最新版本的微务的调用,同时也可以根据所述微服务调用路径将业务访问请求发送至第三微服务,第三微服务也可以根据发布版本参考因子对第三微服务进行发布,由此类推,从而可以实现后续的最新版本的微服务的调用,最终更准确地完成整个微服务调用链的微服务发布。
可选地,发布版本参考因子包括报文头ID值、报文头city值、预设的部署标识值中的至少一个。
作为其中一种实施方式,当发布版本参考因子包括报文头ID值时,S13包括:
如果满足0<=报文头ID值%100<1,则从与第一微服务存在依赖关系的至少两个不同版本的第二微服务中,确定待发布的最新版本的第二微服务。例如,当报文头ID值=1000时,0<=1000%100<1,则确定待发布的最新版本的第二微服务。
作为另一种实施方式,当发布版本参考因子包括city值时,S13包括:
如果满足city值等于预设的第一阈值,则从与第一微服务存在依赖关系的至少两个不同版本的第二微服务中,确定待发布的最新版本的第二微服务。例如,当city值=592(即,预设的第一阈值)时,确定待发布的最新版本的第二微服务。
作为另一种实施方式,假设最新版本的第二微服务只能被最新版本的第一微服务调用时,则发布版本参考因子可以包括报文头ID值、部署标识,S13包括:
如果满足0<=报文头ID值%100<1且部署标识为指定的部署标识,则从与第一微服务存在依赖关系的至少两个不同版本的第二微服务中,确定待发布的最新版本的第二微服务。
例如,当报文头ID值=1000时,则0<=1000%100<1,且部署标识=20191001(指定的部署标识),可以理解地,20191001即为最新版本的第一微服务的部署标识。
如图3所示,S31:从与第一微服务存在依赖关系的至少两个不同旧版本的第二微服务中,确定待发布的目标旧版本的微服务。
例如,当报文头ID值=1001时,0<1001%100<=1,不满足0<=报文头ID值%100<1,则从与第一微服务存在依赖关系的至少两个不同旧版本的第二微服务中,确定待发布的目标旧版本的微服务。
再例如,假设最新版本的第二微服务只能被最新版本的第一微服务调用,20191001为最新版本的第一微服务的部署标识时,如果业务访问请求中携带的部署标识为20191002,则从与第一微服务存在依赖关系的至少两个不同旧版本的第二微服务中,确定待发布的目标旧版本的微服务。
再例如,假设city值=592时,确定待发布的最新版本的第二微服务,如果业务访问请求中携带的city值为591,则从与第一微服务存在依赖关系的至少两个不同旧版本的第二微服务中,确定待发布的目标旧版本的微服务。
具体地,确定待发布的目标旧版本的微服务的方式可以为:假设第二微服务包括有多个版本,比如,版本1.0、版本2.0、版本3.0、版本4.0,其中,版本4.0为最新的版本,则从版本1.0、版本2.0、版本3.0确定出一个待发布的目标旧版本的微服务即可。
可选地,如图4所示,所述方法还包括:
S41:响应管理终端206发送的配置指令而对流控策略进行重新配置。
管理人员可以随时根据市场反馈对流控策略进行重新配置。例如,在初始时,0<=报文头ID值%100<1,则确定对最新版本的第二微服务进行发布,在后续经市场调研,需要不断扩大流量。此时,可以重新配置流控策略为0<=报文头ID值%100<50,相当于在进行微服务发布时,可以切换50%的流量到最新版本的第二微服务,直到最后将流控策略配置为:选择最新版本的第二微服务,从而将全部流量切换到最新版本的第二微服务,完成灰度发布。
请参阅图5,本申请实施例提供了一种微服务发布装置500,应用于电子设备。如图2所示,电子设备可以为第二服务器202,第二服务器202应用于微服务灰度发布系统,微服务灰度发布系统还包括安装有第一微服务的第一服务器201、安装有第三微服务的第三服务器203、管理终端206、配置中心205、用户终端200以及依次通信连接地安装有微服务的第四服务器204。需要说明的是,本申请实施例所提供的微服务发布装置500,其基本原理及产生的技术效果和上述实施例相同,为简要描述,本申请实施例部分未提及之处,可参考上述的实施例中相应内容。所述装置500包括信息接收单元501、微服务确定单元502、微服务发布单元503、信息发送单元504,其中,
信息接收单元501,被配置成接收第一微服务发送的业务访问请求,其中,业务访问请求携带有发布版本参考因子以及微服务调用路径。
微服务确定单元502,被配置成如果预存储有流控策略且发布版本参考因子满足流控策略中的设定条件,则从与第一微服务存在依赖关系的至少两个不同版本的第二微服务中,确定待发布的最新版本的第二微服务。
微服务发布单元503,被配置成对最新版本的第二微服务进行发布。
信息发送单元504,被配置成将业务访问请求传输至与最新版本的第二微服务存在依赖关系的第三微服务。
本申请提供的微服务发布装置500,在执行时可以实现如下功能:通过接收第一微服务发送的业务访问请求,业务访问请求携带有发布版本参考因子以及微服务调用路径;如果预存储有流控策略且发布版本参考因子满足流控策略中的设定条件,则从与第一微服务存在依赖关系的至少两个不同版本的第二微服务中,确定待发布的最新版本的第二微服务;对最新版本的第二微服务进行发布;将业务访问请求传输至与最新版本的第二微服务存在依赖关系的第三微服务,从而实现了对于没有位于微服务调用链头部的最新版本的微务的调用,同时也可以根据微服务调用路径将业务访问请求发送至第三微服务,第三微服务也可以根据发布版本参考因子对第三微服务进行发布,由此类推,从而可以实现后续的最新版本的微服务的调用,最终更准确地完成整个微服务调用链的微服务发布。
可选地,发布版本参考因子包括报文头ID值、报文头city值、预设的部署标识值中的至少一个。
可选地,作为其中一种实施方式,发布版本参考因子包括报文头ID值,微服务确定单元502被具体配置成如果预存储有流控策略且发布版本参考因子满足流控策略中的设定条件,则从与第一微服务存在依赖关系的至少两个不同版本的第二微服务中,确定待发布的最新版本的第二微服务包括:
可选地,作为另一种实施方式,发布版本参考因子包括city值,微服务确定单元502被具体配置成如果满足city值等于预设的第一阈值,则从与第一微服务存在依赖关系的至少两个不同版本的第二微服务中,确定待发布的最新版本的第二微服务。
可选地,作为另一种实施方式,发布版本参考因子包括报文头ID值、部署标识,微服务确定单元502被具体配置成如果满足0<=报文头ID值%100<1且部署标识为指定的部署标识,则从与第一微服务存在依赖关系的至少两个不同版本的第二微服务中,确定待发布的最新版本的第二微服务。
微服务确定单元502还被配置成如果发布版本参考因子不满足流控策略中的设定条件或未预存储有流控策略,则从与第一微服务存在依赖关系的至少两个不同旧版本的第二微服务中,确定待发布的目标旧版本的微服务。
如图6所示,所述装置500还包括:策略配置单元601,被配置成响应管理终端206发送的配置指令而对流控策略进行重新配置。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
图7是本申请的一个实施例电子设备的结构示意图。请参考图7,在硬件层面,该电子设备包括处理器,可选地还包括内部总线、网络接口、存储器。其中,存储器可能包含内存,例如高速随机存取存储器(Random-Access Memory,RAM),也可能还包括非易失性存储器(non-volatile memory),例如至少1个磁盘存储器等。当然,该电子设备还可能包括其他业务所需要的硬件。
处理器、网络接口和存储器可以通过内部总线相互连接,该内部总线可以是ISA(Industry StandardArchitecture,工业标准体系结构)总线、PCI(Peripheral ComponentInterconnect,外设部件互连标准)总线或EISA(Extended IndustryStandardArchitecture,扩展工业标准结构)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图7中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
存储器,用于存放程序。具体地,程序可以包括程序代码,所述程序代码包括计算机操作指令。存储器可以包括内存和非易失性存储器,并向处理器提供指令和数据。
处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,在逻辑层面上形成微服务发布装置。处理器,执行存储器所存放的程序,并具体用于执行以下操作:
接收第一微服务发送的业务访问请求,所述业务访问请求携带有发布版本参考因子以及微服务调用路径;
如果预存储有流控策略且所述发布版本参考因子满足所述流控策略中的设定条件,则从与所述第一微服务存在依赖关系的至少两个不同版本的第二微服务中,确定待发布的最新版本的第二微服务;
对所述最新版本的第二微服务进行发布;
根据所述微服务调用路径将所述业务访问请求传输至与所述最新版本的第二微服务存在依赖关系的第三微服务。
上述如本申请图1所示实施例揭示的微服务发布装置执行的方法可以应用于处理器中,或者由处理器实现。处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable GateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
该电子设备还可执行图1的方法,并实现微服务发布装置在图1所示实施例的功能,本申请实施例在此不再赘述。
当然,除了软件实现方式之外,本申请的电子设备并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
本申请实施例还提出了一种计算机可读存储介质,该计算机可读存储介质存储一个或多个程序,该一个或多个程序包括指令,该指令当被包括多个应用程序的便携式电子设备执行时,能够使该便携式电子设备执行图1所示实施例的方法,并具体用于执行以下操作:
接收第一微服务发送的业务访问请求,所述业务访问请求携带有发布版本参考因子以及微服务调用路径;
如果预存储有流控策略且所述发布版本参考因子满足所述流控策略中的设定条件,则从与所述第一微服务存在依赖关系的至少两个不同版本的第二微服务中,确定待发布的最新版本的第二微服务;
对所述最新版本的第二微服务进行发布;
根据所述微服务调用路径将所述业务访问请求传输至与所述最新版本的第二微服务存在依赖关系的第三微服务。
总之,以上所述仅为本申请的较佳实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

Claims (10)

1.一种微服务发布方法,其特征在于,所述方法包括:
接收第一微服务发送的业务访问请求,其中,所述业务访问请求携带有发布版本参考因子以及微服务调用路径;
如果预存储有流控策略且所述发布版本参考因子满足所述流控策略中的设定条件,则从与所述第一微服务存在依赖关系的至少两个不同版本的第二微服务中,确定待发布的最新版本的第二微服务;
对所述最新版本的第二微服务进行发布;
根据所述微服务调用路径将所述业务访问请求传输至与所述最新版本的第二微服务存在依赖关系的第三微服务。
2.根据权利要求1所述的方法,其特征在于,所述发布版本参考因子包括报文头ID值、报文头city值、预设的部署标识值中的至少一个。
3.根据权利要求2所述的方法,其特征在于,所述发布版本参考因子包括报文头ID值,所述如果预存储有流控策略且所述发布版本参考因子满足所述流控策略中的设定条件,则从与所述第一微服务存在依赖关系的至少两个不同版本的第二微服务中,确定待发布的最新版本的第二微服务包括:
如果满足0<=报文头ID值%100<1,则从与所述第一微服务存在依赖关系的至少两个不同版本的第二微服务中,确定待发布的最新版本的第二微服务。
4.根据权利要求2所述的方法,其特征在于,所述发布版本参考因子包括city值,所述如果预存储有流控策略且所述发布版本参考因子满足所述流控策略中的设定条件,则从与所述第一微服务存在依赖关系的至少两个不同版本的第二微服务中,确定待发布的最新版本的第二微服务包括:
如果满足city值等于预设的第一阈值,则从与所述第一微服务存在依赖关系的至少两个不同版本的第二微服务中,确定待发布的最新版本的第二微服务。
5.根据权利要求2所述的方法,其特征在于,所述发布版本参考因子包括报文头ID值、部署标识,所述如果预存储有流控策略且所述发布版本参考因子满足所述流控策略中的设定条件,则从与所述第一微服务存在依赖关系的至少两个不同版本的第二微服务中,确定待发布的最新版本的第二微服务包括:
如果满足0<=报文头ID值%100<1且部署标识为指定的部署标识,则从与所述第一微服务存在依赖关系的至少两个不同版本的第二微服务中,确定待发布的最新版本的第二微服务。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
如果发布版本参考因子不满足所述流控策略中的设定条件或未预存储有流控策略,则从与所述第一微服务存在依赖关系的至少两个不同旧版本的第二微服务中,确定待发布的目标旧版本的微服务。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
响应管理终端发送的配置指令而对所述流控策略进行重新配置。
8.一种微服务发布装置,其特征在于,所述装置包括:
信息接收单元,被配置成接收第一微服务发送的业务访问请求,其中,所述业务访问请求携带有发布版本参考因子以及微服务调用路径;
微服务确定单元,被配置成如果预存储有流控策略且所述发布版本参考因子满足所述流控策略中的设定条件,则从与所述第一微服务存在依赖关系的至少两个不同版本的第二微服务中,确定待发布的最新版本的第二微服务;
微服务发布单元,被配置成对所述最新版本的第二微服务进行发布;
信息发送单元,被配置成根据所述微服务调用路径将所述业务访问请求传输至与所述最新版本的第二微服务存在依赖关系的第三微服务。
9.一种电子设备,其特征在于,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如权利要求1至7中任一项所述的微服务发布方法。
10.一种存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行如权利要求1至7中任一项所述的微服务发布方法。
CN202010188591.5A 2020-03-17 2020-03-17 微服务发布方法、装置及电子设备、存储介质 Pending CN113485758A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010188591.5A CN113485758A (zh) 2020-03-17 2020-03-17 微服务发布方法、装置及电子设备、存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010188591.5A CN113485758A (zh) 2020-03-17 2020-03-17 微服务发布方法、装置及电子设备、存储介质

Publications (1)

Publication Number Publication Date
CN113485758A true CN113485758A (zh) 2021-10-08

Family

ID=77932550

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010188591.5A Pending CN113485758A (zh) 2020-03-17 2020-03-17 微服务发布方法、装置及电子设备、存储介质

Country Status (1)

Country Link
CN (1) CN113485758A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114268665A (zh) * 2021-12-28 2022-04-01 中国农业银行股份有限公司 微服务系统发布方法、装置、设备及可读存储介质
CN115473809A (zh) * 2022-08-27 2022-12-13 深圳市凯迪仕智能科技有限公司 一种基于微服务架构的配置处理方法、装置和存储介质

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114268665A (zh) * 2021-12-28 2022-04-01 中国农业银行股份有限公司 微服务系统发布方法、装置、设备及可读存储介质
CN114268665B (zh) * 2021-12-28 2023-11-21 中国农业银行股份有限公司 微服务系统发布方法、装置、设备及可读存储介质
CN115473809A (zh) * 2022-08-27 2022-12-13 深圳市凯迪仕智能科技有限公司 一种基于微服务架构的配置处理方法、装置和存储介质

Similar Documents

Publication Publication Date Title
CN109658238B (zh) 数据处理方法及装置
CN110557445A (zh) 访问请求路由方法、装置及存储介质、电子设备
CN106899666B (zh) 一种针对业务标识的数据处理方法及装置
CN111290866B (zh) 业务处理方法及装置
CN109391512B (zh) 一种服务发布方法、装置及电子设备
CN111461887B (zh) 一种区块链的共识处理方法、装置和电子设备
CN111651467B (zh) 一种区块链节点接口发布调用方法和装置
CN113205416A (zh) 一种基于区块链预言机的业务处理方法和系统
CN113612686A (zh) 流量调度方法、装置及电子设备
CN110851207B (zh) 状态转换管理方法、装置、电子设备和存储介质
CN111786984B (zh) Pod通信连接方法、装置及电子设备、存储介质
CN112153143A (zh) Kubernetes集群的流量调度方法、装置及电子设备
CN111225018A (zh) 一种请求报文处理方法、装置和电子设备
CN112751935B (zh) 请求处理方法、装置、电子设备及存储介质
CN110543317A (zh) 交易请求处理方法、装置、网关及存储介质
CN111694639A (zh) 进程容器地址的更新方法、装置和电子设备
CN110648125B (zh) 一种打包交易方法、装置、电子设备及存储介质
CN108647102B (zh) 异构系统的服务请求处理方法、装置和电子设备
CN111310137A (zh) 一种区块链关联数据存证方法、装置及电子设备
CN111949297B (zh) 一种区块链智能合约升级方法、装置及电子设备
CN113485758A (zh) 微服务发布方法、装置及电子设备、存储介质
CN111259429A (zh) 一种资源操作权限控制方法、装置及电子设备
CN111709748A (zh) 一种具有业务属性的交易执行方法、装置及电子设备
CN111159298A (zh) 业务请求处理方法、装置、电子设备及存储介质
CN116483477A (zh) 一种api调用方法及装置

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