CN111988416B - 一种灰度发布方法、装置、设备及介质 - Google Patents

一种灰度发布方法、装置、设备及介质 Download PDF

Info

Publication number
CN111988416B
CN111988416B CN202010879779.4A CN202010879779A CN111988416B CN 111988416 B CN111988416 B CN 111988416B CN 202010879779 A CN202010879779 A CN 202010879779A CN 111988416 B CN111988416 B CN 111988416B
Authority
CN
China
Prior art keywords
service
information
service node
request
service request
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.)
Active
Application number
CN202010879779.4A
Other languages
English (en)
Other versions
CN111988416A (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.)
Bigo Technology Singapore Pte Ltd
Original Assignee
Guangzhou Baiguoyuan Information Technology 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 Guangzhou Baiguoyuan Information Technology Co Ltd filed Critical Guangzhou Baiguoyuan Information Technology Co Ltd
Priority to CN202010879779.4A priority Critical patent/CN111988416B/zh
Publication of CN111988416A publication Critical patent/CN111988416A/zh
Application granted granted Critical
Publication of CN111988416B publication Critical patent/CN111988416B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • 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

Abstract

本发明实施例公开了一种灰度发布方法、装置、设备及介质,涉及计算机网络技术领域,该灰度发布方法包括在服务节点接收服务请求后,确定所述服务请求携带的粒度标识信息;依据所述粒度标识信息对应的服务版本信息,获取目标服务节点信息;依据所述目标服务节点信息,确定所述服务节点是否需要处理所述服务请求;若所述服务节点需要处理所述服务请求,则响应所述服务请求。本发明实施例使得灰度发布方案具有复用性,且逻辑收敛于自身服务内部,使得需要灰度上线的服务能够更高效和安全,提高开发效率。

Description

一种灰度发布方法、装置、设备及介质
技术领域
本发明涉及计算机网络技术领域,尤其涉及一种灰度发布方法、装置、设备及介质。
背景技术
随着计算机网络技术的快速发展,诸如网络直播等业务服务越来越普及,给人们的生活、工作以及学习带来了极大的便利。
目前在业务服务有较大改动后,在上线过程中需要有一个灰度上线的过程,以便于观察线上现象,从而在有问题时能及时回滚,减少影响范围,以及降低风险。其中,灰度是指在黑与白之间能够平滑过渡的一种方式,在此处主要针对业务线上服务升级的过渡过程。
当前灰度过程通常是采用更换服务名的放量控制方案,即在每次业务服务有较大改动时都需要修改更新为一个不同的服务名,且所有上游服务都需要考虑衡量加入放量逻辑。放量完之后,上游服务还需去掉用旧服务名,在上游服务较多时,这样的修改容易出错,并且所有上游服务都需要修改升级,代价较大。
发明内容
有鉴于此,本发明实施例提供一种灰度发布方法、装置、设备及介质,以使灰度发布方案具有复用性,且逻辑收敛于自身服务内部,使得需要灰度上线的服务能够更高效和安全,提高开发效率。
第一方面,本发明实施例提供了一种灰度发布方法,包括:
在服务节点接收服务请求后,确定所述服务请求携带的粒度标识信息;
依据所述粒度标识信息对应的服务版本信息,获取目标服务节点信息;
依据所述目标服务节点信息,确定所述服务节点是否需要处理所述服务请求;
若所述服务节点需要处理所述服务请求,则响应所述服务请求。
第二方面,本发明实施例还提供了一种灰度发布装置,包括:
粒度标识信息确定模块,用于在服务节点接收服务请求后,确定所述服务请求携带的粒度标识信息;
服务节点信息获取模块,用于依据所述粒度标识信息对应的服务版本信息,获取目标服务节点信息;
请求处理确定模块,用于依据所述目标服务节点信息,确定所述服务节点是否需要处理所述服务请求;
服务请求响应模块,用于在所述服务节点需要处理所述服务请求时,响应所述服务请求。
第三方面,本发明实施例还提供了一种电子设备,包括:处理器和存储器;所述存储器中存储有至少一条指令,所述指令由所述处理器执行,使得所述电子设备执行如第一方面所述的灰度发布方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,所述可读存储介质中的指令由设备的处理器执行时,使得设备能够执行如第一方面所述的灰度发布方法。
本发明实施例在服务节点接收服务请求后,通过依据该服务请求携带的粒度标识信息对应的服务版本信息,获取目标服务节点信息,以依据该目标服务节点信息确定服务节点是否需要处理服务请求,并且在服务节点需要处理该服务请求时响应服务请求,即通过服务版本信息控制,使得灰度发布方案具有复用性,且所有逻辑收敛于自身服务内部,上下游服务无需感知,减少影响范围,降低风险使得需要灰度上线的服务能够更高效和安全,提高开发效率。
附图说明
图1是本发明实施例中的一种灰度发布方法的步骤流程示意图;
图2是本发明一个可选示例中的一种灰度发布方法的步骤流程示意图;
图3是本发明一个可选实施例中的一种灰度发布方法的步骤流程示意图;
图4是本发明实施例中的一种灰度发布装置实施例的结构方框示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构或组成。
现有使用的一些灰度方案中存在不具有复用性,影响范围不能收敛于服务内部而导致影响范围大,放量粒度不易控制,过于复杂等问题。例如,一种采用更改服务名的放量控制方案存在两个较严重的缺陷:一是不具有复用性,即每次有较大改动均需要修改更新为一个不同的服务名;二是涉及服务较多,所有上游服务都需要考虑衡量加入放量逻辑,复杂性高。另一种采用服务实例粒度的放量控制方案,是按照服务实例点为放量控制粒度来实现灰度上线过渡,其主要缺陷是无法细化控制粒度,如无法将放量控制粒度细化到用户级别,影响范围不可控制。
为解决上述问题,本发明实施例提出了一种新的灰度发布方法。具体的,本实施例提出的灰度发布方法可以适用于灰度发布情况,可以应用于业务的服务节点,以在业务服务改动后实现灰度过渡,完成业务线上服务升级的过渡过程中。如图1所示,该灰度发布方法具体可以包括如下步骤:
步骤110,在服务节点接收服务请求后,确定所述服务请求携带的粒度标识信息。
具体而言,本发明实施例在服务节点接收到服务请求后,可以提取该服务请求携带的粒度标识信息,以根据该粒度标识信息确定对应的服务版本信息。其中,服务请求可以是指上游服务所发送的请求,该请求可以携带有用于放量控制的粒度标识信息。进一步的,该粒度标识信息可以包含一种或多种用于放量控制的粒度标识Key,如该粒度标识Key可以是用户标识符(User Identifier,UID)、用户标识(Identifier,ID)区段号、用户百分比等,本实施例对此不作具体限制。
可选的,本实施例中的粒度标识信息可以包含以下至少一种:用户标识信息、用户标识区段信息和用户百分比信息。其中,用户标识信息可以是指用户标识,如可以是网络直播间中的主播ID等;用户标识区段信息可以是指用户标识所属的区段,如可以是用户ID区段号;用户百分比信息可以是百分比的具体数值,如可以10%、30%等,本实施例对此不作具体限制。
步骤120,依据所述粒度标识信息对应的服务版本信息,获取目标服务节点信息。
本实施例中,服务版本信息可以包括业务为服务节点定义的各种版本信息,如可以是业务为各服务节点Server定义的版本号Version。具体而言,本发明实施例在确定出服务请求携带的粒度标识信息后,可以根据该粒度标识信息从对应的策略(Policy)中获取到对应的服务版本信息,随后可根据获取到的服务版本信息,从服务管理器(Server Manger)中获取到需要处理此服务请求的服务节点信息,以作为目标服务节点信息。
可选的,本实施例中依据所述粒度标识信息对应的服务版本信息,获取目标服务节点信息,包括:从服务管理器中提取所述服务版本信息对应的服务节点信息,以作为所述目标服务节点信息。该目标服务节点信息可以包含各目标服务节点的服务信息,其中,目标服务节点可以是指需要处理服务请求的服务节点。
步骤130,依据所述目标服务节点信息,确定所述服务节点是否需要处理所述服务请求。
具体而言,本实施例在获取到目标服务节点信息后,可以根据该目标服务节点信息判断当前的服务节点是否需要处理其所接收到的服务请求,如可以通过判断获取到的目标服节点信息是否包含服务节点的服务信息来确定该服务节点是否需要处理服务请求。若所述服务节点需要处理服务请求,则可以执行步骤140。若服务节点不需要处理服务请求,则可以将该服务请求转发给到需要处理此服务请求的其他服务节点进行处理。
可选的,本实施例依据所述目标服务节点信息,确定所述服务节点是否需要处理所述服务请求,具体可以包括:判断所述目标服务节点信息是否包含所述服务节点的服务信息;若所述目标服务节点信息包含所述服务节点的服务信息,则判定所述服务节点需要处理所述服务请求;否则,判定所述服务节点不需要处理所述服务请求。
步骤140,若所述服务节点需要处理服务请求,则响应所述服务请求。
具体的,本实施例在确定出服务节点需要处理接收到的服务请求后,可以由该服务节点直接处理服务请求,即对该服务请求进行响应,以实现灰度过渡,从而使得灰度的放量逻辑收敛于服务内部,减少影响范围,降低风险。
作为本发明的一个示例,在服务节点Server1接收到上游请求后,可以根据该上游请求携带的用于放量控制的粒度标识Key获取对应的服务版本号Version,随后可以根据该服务版本号Version获取对应的目标服务节点信息,以根据该目标服务节点信息确定出该上游请求是由哪些服务节点进行处理,进而可以判断出需要处理该上游请求的服务节点是否包含服务节点Server1,换言之,即确定出服务节点是否需要处理该上游请求,其中,上游请求是指服务节点的上游服务所发送的服务请求。若需要处理该服务请求的服务节点包含服务节点Server1,则可以由服务节点Server1本身直接处理该服务请求,即在服务节点需要处理服务请求时,由本服务节点直接对服务请求进行处理,所有逻辑收敛在自身服务内部,上下游服务无需感知,从而减少灰度发布的影响范围,使需灰度上线的服务能更高效,更安全。若需要处理该服务请求的服务节点不包含服务节点Server1,则可以将该服务请求转发该需要处理该服务请求的其他服务节点,如在服务请求属于服务节点Server2处理时,可以将该服务请求转发给服务节点Server2,以由服务节点Server2处理该服务请求,实现灰度发布。
需要说明的是,本发明实施例中的服务节点作为业务中的服务实例点,可以通过诸如中心控制器等方式,获取其他服务节点的信息。具体而言,分布式服务都会存在一种方式,使得业务实例点(即业务的服务实例点)之间能相互探测感知,并获取对方信息,如获取对方的版本信息,该版本信息可以作为服务节点的属性信息,如可是作为服务节点的一个属性的版本号。
此外,服务节点可以将探测感知到的其他服务节点信息交由服务管理器(ServerManager)进行维护管理,并可在初始化时选择根据用于放量控制的粒度标识Key获取版本号策略的策略,以及可在业务各接口开始处通过控制器(Controller)进行路由转发控制。除业务接口外,业务内部逻辑,如由内部定时器触发的相关逻辑等,也可通过控制器进行判断是否为自身需处理对应的粒度标识key,本实施例对此不作具体限制。
可选的,本实施例提供的灰度发布方法可以应用于一个灰度控制插件中,该灰度控制插件可以以通用插件的方式集成在服务节点中,以作为服务节点中的灰度发布插件,实现服务节点的灰度发布。进一步而言,本实施例中的服务节点可以设置有灰度控制插件。在上述实施例的基础上,可选的,本实施例的灰度发布方法还包括:若所述服务节点不需要处理所述服务请求,则通过所述灰度控制插件转发所述服务请求。
例如,结合上述示例,在服务节点Server1接收到上游请求后,可以由灰度控制插件判断是否需要处理此上游请求的服务节点是否包含服务节点1,如图2所示,由灰度控制插件判断是否需要处理此上游请求的服务节点,即通过服务节点Server1中设置的灰度控制插件判断服务节点Server1是否需要处理该上游请求。具体的,服务节点Server1中设置的灰度控制插件可以根据该上游请求携带的粒度标识Key获取对应的服务版本号Version,随后可以根据该服务版本号Version获取对应的目标服务节点信息,以根据该目标服务节点信息确定出该上游请求是由哪些服务节点处理,进而可以确定出需要处理该上游请求的服务节点是否包含服务节点Server1。若需要处理该上游请求的服务节点包含服务节点Server1,则可以由服务节点Server1本身直接处理该上游请求,即在服务节点需要处理服务请求时,服务请求由本服务节点进行处理,以由本服务节点对服务请求进行响应。若需要处理该服务请求的服务节点不包含服务节点Server1,则可以通过灰度控制插件将该服务请求转发至需要处理该服务请求的其他服务节点,即在上游请求由其他服务节点进行处理时,通过灰度控制插件转发到其他服务节点,以通过其他服务节点进行处理,如在服务请求属于服务节点Server2处理时,可以通过灰度控制插件将该服务请求转发给服务节点Server2,以由服务节点Server2处理该服务请求,实现灰度发布。
在具体实现中,可以预先使业务的每个服务节点携带有一个版本号属性,且每个服务节点也能感获取其他服务节点的版本号属性,并进行维护版本号与服务节点之间的关系,即维护版本号Version与服务节点Servers之间对应的映射关系,以便后续灰度发布过程中可以根据版本号确定出对应服务节点信息。其中,版本号Version可以是指业务为各服务节点定义的版本号。进一步而言,本实施例根据服务请求携带的粒度标识信息获取到的服务版本信息可以包含目标服务节点的版本号,该目标服务节点可以是指需要处理服务请求的服务节点。
可选的,本实施例在确定出服务请求携带的粒度标识信息之后,还可以包括:依据所述粒度标识信息确定目标策略,从所述目标策略中获取所述粒度标识信息对应的服务版本信息。其中,目标策略可以是指与粒度标识信息对应的策略,如可以是与用于放量控制的粒度标识Key对应的策略Policy。该策略Policy可以是根据粒度标识Key获取版本策略的抽象类,具体可以包括配置策略ConfigPolicy、定制策略CustomPolicy等,本实施例对此不作具体限制。需要说明的是,配置策略ConfigPolicy可以是指是通过配置文件获取版本号的策略;定制策略CustomPolicy是通过业务自定义方式获取版本号的策略。
具体而言,本实施例中的粒度标识信息为用于放量控制的粒度标识,该粒度标识所对应的策略可以作为目标策略,以便后续可以从该目标策略中提取出粒度标识所对应的服务版本信息。换言之,本实施例中的目标策略可以是粒度标识对应的策略。可选的,粒度标识对应的策略可以通过如下方式生成:依据服务版本信息的定义信息,建立所述服务版本信息与粒度标识信息的对应映射关系,其中,所述定义信息包含配置文件信息和/或业务自定义信息;依据所述对应映射关系生成所述粒度标识对应的策略。需要说明的是,配置文件信息可以是包含配置文件中的信息,如可以包含服务实例点自身的基础配置信息、Policy相关配置信息,该Policy相关配置信息供配置策略(ConfigPolicy)使用。业务自定义信息可以包括通过业务自定义方式获取到的信息,以供ConfigPolicy使用。
例如,可以通过多种方式,如配置文件、业务自定义回调函数等,定义各版本号需处理不同的粒度标识Key,以形成版本号Version与粒度标识Key之间的对应映射关系,进而可以基于版本号Version与粒度标识Key之间的对应映射关系生成相应的策略Policy,如形成配置策略ConfigPolicy、定制策略CustomPolicy等,以便后续可以根据粒度标识key获取版本号策略。当然,服务节点还可以通过其他通用方式增加其他策略,如可以通过继承策略Policy的方式来增加其他策略,本示例对此不作具体限制。
需要说明的是,相同的版号服务节点可以形成一个内部集群,不同版本号服务节点之间进行隔离,并可通过作为放量路由的灰度控制插件进行转发,如可以放量路由转发不是由本服务节点进行处理的服务请求,以转发到其他服务节点进行处理。
综上,本发明实施例在服务节点接收服务请求后,通过依据该服务请求携带的粒度标识信息对应的服务版本信息,获取目标服务节点信息,以依据该目标服务节点信息确定服务节点是否需要处理服务请求,并且在服务节点需要处理该服务请求时响应服务请求,即通过服务版本信息控制灰度发布,使得得灰度发布方案具有复用性,且所有逻辑收敛于自身服务内部,上下游服务无需感知,减少影响范围,降低风险使得需要灰度上线的服务能够更高效和安全,提高开发效率。
参照图3,示出了本发明一个可选实施例中的一种灰度发布方法的步骤流程示意图,具体可以包括如下步骤:
步骤310,在服务节点接收服务请求后,确定所述服务请求携带的粒度标识信息。
本实施例中,粒度标识信息为用于用于放量控制的粒度标识。例如,在服务节点通过上游接口接收上游服务节点发送的服务请求的情况下,服务请求携带的粒度标识信息可以是上游接口传递的用于放量控制的粒度标识Key。
步骤320,依据所述粒度标识信息确定目标策略。
其中,目标策略是指粒度标识信息对应的策略。
步骤330,从所述目标策略中获取所述粒度标识信息对应的服务版本信息。
例如,在服务节点通过上游接口接收到服务请求后,可以通过控制器(Controller),根据该上游接口传递的粒度标识Key从对应的策略Policy中获取到对应的版本号Version,以便后续可以根据该获取到的版本号Version从服务管理器(ServerManger)中获取到需处理此服务请求的服务节点信息,即执行步骤340。其中,控制器(Controller)可以是灰度控制插件对业务提供路由放量接口。
步骤340,从服务管理器中提取所述服务版本信息对应的服务节点信息,以作为所述目标服务节点信息。
步骤350,判断所述目标服务节点信息是否包含所述服务节点的服务信息。
具体的,本实施例在获取到目标服务节点信息后,可以通过判断该目标服务节点信息是否包含服务节点的服务信息,来确定当前接收到的服务请求是否需要该服务节点处理。若所述目标服务节点信息包含所述服务节点的服务信息,则可以判定所述服务节点需要处理所述服务请求,随后执行步骤360;否则,可以判定所述服务节点不需要处理所述服务请求,即在目标服务节点信息不包含服务节点的服务信息时,可以确定该服务节点不需要处理当前接收到的服务请求,随后可跳转到步骤370执行。
步骤360,若目标服务节点信息包含所述服务节点的服务信息,则响应所述服务请求。
具体的,本实施例在判断出目标服务节点信息包含所述服务节点的服务信息后,即在确定出服务节点需要处理服务请求后,可以由该服务节点对该服务请求进行响应,即由本服务节点直接完成对该服务请求的处理,使得所有放量逻辑收敛在服务自身内部,上下游服务无需感知,从而减小影响范围,降低风险。
步骤370,若目标服务节点信息不包含所述服务节点的服务信息,则通过灰度控制插件转发所述服务请求。
具体的,本实施例在判断出目标服务节点信息不包含所述服务节点的服务信息后,即在确定出服务节点不需要处理服务请求后,可以通过灰度控制插件将该服务请求转发给需要处理该服务请求的其他服务节点,以通过其他服务节点处理该服务请求,从而完成该服务请求的处理,实现灰度发布。
综上,本发明实施例通过服务节点的版本号来控制,使得灰度发布方案具有复用性,并且所有放量逻辑收敛于自身服务内部,上下游服务无需感知,从而减少影响范围,使得需灰度上线的服务能更高效,更安全。具体的,本发明实施例提供的灰度发布方案可以应用于插件中,以实现一种新的插件式的灰度发布方案,使得服务节点集成一次灰度插件后,后续的服务改动上线都能够复用,实现灰度发布方案的复用性。
此外,本发明实施例根据用于放量控制的粒度标识获取相应的版本号来实现控制,如可以根据诸如用户ID、用户ID区段号、用户百分比等多维度粒度控制,即可提供多种放量控制策略,也能轻松支持扩展不同的策略,使得可控粒度更精细,进而可以提高开发效率。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。
参照图4,示出了本发明实施例中的一种灰度发布装置实施例的结构方框示意图,该灰度发布装置具体可以包括如下模块:
粒度标识信息确定模块410,用于在服务节点接收服务请求后,确定所述服务请求携带的粒度标识信息;
服务节点信息获取模块420,用于依据所述粒度标识信息对应的服务版本信息,获取目标服务节点信息;
请求处理确定模块430,用于依据所述目标服务节点信息,确定所述服务节点是否需要处理所述服务请求;
服务请求响应模块440,用于在所述服务节点需要处理所述服务请求时,响应所述服务请求。
在上述实施例的基础上,可选地,上述灰度发布装置还包括如下模块:
目标策略确定模块,用于依据所述粒度标识信息确定目标策略;
版本信息获取模块,用于从所述目标策略中获取所述粒度标识信息对应的服务版本信息。
在本发明的一个可选实施例中,所述服务节点信息获取模块420具体可以用于从服务管理器中提取所述服务版本信息对应的服务节点信息,以作为所述目标服务节点信息。
可选的,本发明实施例中的请求处理确定模块430可以包括如下子模块:
判断子模块,用于判断所述目标服务节点信息是否包含所述服务节点的服务信息;
判定子模块,用于若所述目标服务节点信息包含所述服务节点的服务信息,则判定所述服务节点需要处理所述服务请求;否则,判定所述服务节点不需要处理所述服务请求。
具体的,本实施例中的判定子模块在所述目标服务节点信息包含所述服务节点的服务信息时,判定所述服务节点需要处理所述服务请求;而在目标服务节点信息不包含所述服务节点的服务信息时,判定所述服务节点不需要处理所述服务请求。
可选的,本发明实施例中的服务节点设置有灰度控制插件,上述灰度发布装置还包括:服务请求转发模块。该服务请求转发模块,用于在所述所述服务节点不需要处理所述服务请求时,通过所述灰度控制插件转发所述服务请求。
进一步而言,本实施例中的粒度标识信息为用于放量控制的粒度标识,所述目标策略为所述粒度标识对应的策略。上述灰度发布装置还可以包含策略生成模块。该策略生成模块可以用于依据服务版本信息的定义信息,建立所述服务版本信息与粒度标识信息的对应映射关系,以及,依据所述对应映射关系生成所述粒度标识对应的策略。其中,所述定义信息包含配置文件信息和/或业务自定义信息。
可选的,本实施例中的粒度标识信息可以包含以下至少一种:用户标识信息、用户标识区段信息和用户百分比信息。所述服务版本信息包含目标服务节点的版本号,所述目标服务节点为需要处理所述服务请求的服务节点。
需要说明的是,上述提供的灰度发布装置可执行本发明任意实施例所提供的灰度发布方法,具备执行方法相应的功能和有益效果。
在具体实现中,上述灰度发布装置可以集成在设备中。该设备可以是两个或多个物理实体构成,也可以是一个物理实体构成,如设备可以是个人计算机(PersonalComputer,PC)、电脑、手机、平板设备、个人数字助理、服务器、消息收发设备、游戏控制台等。
进一步的,本发明实施例还提供一种电子设备,包括:处理器和存储器。存储器中存储有至少一条指令,且指令由所述处理器执行,使得所述电子设备执行如上述方法实施例中所述的灰度发布方法。
进一步的,本发明实施例还提供一种计算机可读存储介质,所述可读存储介质中的指令由设备的处理器执行时,使得设备能够执行如上述方法实施例所述的灰度发布方法。示例性的,该灰度发布方法可以适用于基于服务节点的灰度发布情况,具体可以包括:在服务节点接收服务请求后,确定所述服务请求携带的粒度标识信息;依据所述粒度标识信息对应的服务版本信息,获取目标服务节点信息;依据所述目标服务节点信息,确定所述服务节点是否需要处理所述服务请求;若所述服务节点需要处理所述服务请求,则响应所述服务请求。
需要说明的是,对于装置、设备、存储介质实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是机器人,个人计算机,服务器,或者网络设备等)执行本发明任意实施例所述的灰度发布方法。
值得注意的是,上述灰度发布装置中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行装置执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由权利要求范围决定。

Claims (10)

1.一种灰度发布方法,其特征在于,包括:
在服务节点接收服务请求后,确定所述服务请求携带的粒度标识信息;
依据所述粒度标识信息对应的服务版本信息,获取目标服务节点信息;
依据所述目标服务节点信息,确定所述服务节点是否需要处理所述服务请求;
若所述服务节点需要处理所述服务请求,则响应所述服务请求;
所述粒度标识信息包含以下至少一种:用户标识信息、用户标识区段信息和用户百分比信息。
2.根据权利要求1所述的灰度发布方法,其特征在于,在确定所述服务请求携带的粒度标识信息之后,还包括:
依据所述粒度标识信息确定目标策略;
从所述目标策略中获取所述粒度标识信息对应的服务版本信息。
3.根据权利要求1所述的灰度发布方法,其特征在于,所述依据所述粒度标识信息对应的服务版本信息,获取目标服务节点信息,包括:
从服务管理器中提取所述服务版本信息对应的服务节点信息,以作为所述目标服务节点信息。
4.根据权利要求1所述的灰度发布方法,其特征在于,所述依据所述目标服务节点信息,确定所述服务节点是否需要处理所述服务请求,包括:
判断所述目标服务节点信息是否包含所述服务节点的服务信息;
若所述目标服务节点信息包含所述服务节点的服务信息,则判定所述服务节点需要处理所述服务请求;否则,判定所述服务节点不需要处理所述服务请求。
5.根据权利要求1或4所述的灰度发布方法,其特征在于,所述服务节点设置有灰度控制插件,所述灰度发布方法还包括:
若所述服务节点不需要处理所述服务请求,则通过所述灰度控制插件转发所述服务请求。
6.根据权利要求2所述的灰度发布方法,其特征在于,所述粒度标识信息为用于放量控制的粒度标识,所述目标策略为所述粒度标识对应的策略,所述粒度标识对应的策略通过如下方式生成:
依据服务版本信息的定义信息,建立所述服务版本信息与粒度标识信息的对应映射关系,其中,所述定义信息包含配置文件信息和/或业务自定义信息;
依据所述对应映射关系生成所述粒度标识对应的策略。
7.根据权利要求2所述的灰度发布方法,其特征在于,所述服务版本信息包含目标服务节点的版本号。
8.一种灰度发布装置,其特征在于,包括:
粒度标识信息确定模块,用于在服务节点接收服务请求后,确定所述服务请求携带的粒度标识信息;
服务节点信息获取模块,用于依据所述粒度标识信息对应的服务版本信息,获取目标服务节点信息;
请求处理确定模块,用于依据所述目标服务节点信息,确定所述服务节点是否需要处理所述服务请求;
服务请求响应模块,用于在所述服务节点需要处理所述服务请求时,响应所述服务请求;
所述粒度标识信息包含以下至少一种:用户标识信息、用户标识区段信息和用户百分比信息。
9.一种电子设备,其特征在于,包括:处理器和存储器;
所述存储器中存储有至少一条指令,所述指令由所述处理器执行,使得所述电子设备执行如权利要求1至7任一所述的灰度发布方法。
10.一种计算机可读存储介质,其特征在于,所述可读存储介质中的指令由设备的处理器执行时,使得设备能够执行如权利要求1至7任一所述的灰度发布方法。
CN202010879779.4A 2020-08-27 2020-08-27 一种灰度发布方法、装置、设备及介质 Active CN111988416B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010879779.4A CN111988416B (zh) 2020-08-27 2020-08-27 一种灰度发布方法、装置、设备及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010879779.4A CN111988416B (zh) 2020-08-27 2020-08-27 一种灰度发布方法、装置、设备及介质

Publications (2)

Publication Number Publication Date
CN111988416A CN111988416A (zh) 2020-11-24
CN111988416B true CN111988416B (zh) 2023-04-21

Family

ID=73440153

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010879779.4A Active CN111988416B (zh) 2020-08-27 2020-08-27 一种灰度发布方法、装置、设备及介质

Country Status (1)

Country Link
CN (1) CN111988416B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113242281A (zh) * 2021-04-26 2021-08-10 微梦创科网络科技(中国)有限公司 一种灰度发布方法、装置、设备及存储介质
CN113422732A (zh) * 2021-06-22 2021-09-21 康键信息技术(深圳)有限公司 基于全站灰度的版本更新方法、装置、设备及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107864175A (zh) * 2017-08-24 2018-03-30 平安普惠企业管理有限公司 灰度发布控制方法、装置、设备及存储介质
CN108494876A (zh) * 2018-04-12 2018-09-04 北京达佳互联信息技术有限公司 实现服务灰度发布的方法、装置、插件设备和代理服务器
WO2019095824A1 (zh) * 2017-11-17 2019-05-23 中兴通讯股份有限公司 一种数据配置管理方法、设备及计算机可读存储介质
CN109871224A (zh) * 2019-02-13 2019-06-11 北京炎黄新星网络科技有限公司 一种基于用户标识的灰度发布方法、系统、介质及设备
CN110661835A (zh) * 2018-06-29 2020-01-07 马上消费金融股份有限公司 一种灰度发布方法及其处理方法、节点及系统和存储装置
CN111443941A (zh) * 2020-03-27 2020-07-24 中国平安财产保险股份有限公司 灰度发布的方法及装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6808328B2 (ja) * 2016-02-24 2021-01-06 キヤノン株式会社 情報処理装置、バックアップ方法、情報処理装置の制御方法、及びプログラム

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107864175A (zh) * 2017-08-24 2018-03-30 平安普惠企业管理有限公司 灰度发布控制方法、装置、设备及存储介质
WO2019095824A1 (zh) * 2017-11-17 2019-05-23 中兴通讯股份有限公司 一种数据配置管理方法、设备及计算机可读存储介质
CN108494876A (zh) * 2018-04-12 2018-09-04 北京达佳互联信息技术有限公司 实现服务灰度发布的方法、装置、插件设备和代理服务器
CN110661835A (zh) * 2018-06-29 2020-01-07 马上消费金融股份有限公司 一种灰度发布方法及其处理方法、节点及系统和存储装置
CN109871224A (zh) * 2019-02-13 2019-06-11 北京炎黄新星网络科技有限公司 一种基于用户标识的灰度发布方法、系统、介质及设备
CN111443941A (zh) * 2020-03-27 2020-07-24 中国平安财产保险股份有限公司 灰度发布的方法及装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Spheres: A Web Services Framework for Smartphone Sensing as a Service";Mark Allen Gray;《2015 9th International Conference on Next Generation Mobile Applications,Services and Technologies》;20160107;全文 *
基于微服务架构的电力云服务平台;杨俊伟等;《电力信息与通信技术》;20170115(第01期);全文 *

Also Published As

Publication number Publication date
CN111988416A (zh) 2020-11-24

Similar Documents

Publication Publication Date Title
CN111988416B (zh) 一种灰度发布方法、装置、设备及介质
CN110162382B (zh) 基于容器的灰度发布方法、装置、计算机设备及存储介质
CN110138732B (zh) 访问请求的响应方法、装置、设备及存储介质
CN110661835B (zh) 一种灰度发布方法及其处理方法、节点及系统和存储装置
US20050267951A1 (en) Rolling upgrade of distributed software with automatic completion
CN111770157B (zh) 一种业务处理方法、装置及电子设备和存储介质
CN105718267A (zh) 一种多应用合并为单应用的实现方法及其实现系统
CN109800261B (zh) 双数据库连接池的动态控制方法、装置及相关设备
US11222272B2 (en) Methods and systems for advanced content cacheability determination
CN106301968A (zh) 一种终端数据的处理方法、装置及系统
CN113704052A (zh) 一种微服务架构的运维系统、方法、设备及介质
CN115552933A (zh) 电信通信系统中的联邦学习
WO2020259438A1 (zh) 服务扩容与迁移方法、装置、系统、设备及可读存储介质
CN114676205A (zh) 事件信息的处理方法及装置
CN113204368B (zh) 应用程序处理方法、服务器及存储介质
EP2692185A1 (en) Method and arrangement for providing update notifications in a telecommunication network
CN110995489A (zh) 大数据平台服务器管理方法、装置、服务器及存储介质
CN112214303A (zh) Kubernetes集群自动缩放系统
CN105825316A (zh) 一种积分管理方法
CN113535225A (zh) 应用软件的环境配置文件处理方法、装置、设备和介质
CN111209284B (zh) 基于元数据的分表方法及装置
CN109391486A (zh) 基于用户体验的对互操作策略调整的预警方法及服务器
CN111813880A (zh) 一种国土空间规划项目管理方法、系统及存储介质
CN112000720A (zh) 数据库连接的管理方法、管理系统以及数据库连接池
Raju et al. A geometrical model of cell fate specification in the mouse blastocyst

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
TR01 Transfer of patent right

Effective date of registration: 20231008

Address after: 31a, 15th floor, building 30, maple commercial city, bangrang Road, Brazil

Patentee after: Baiguoyuan Technology (Singapore) Co.,Ltd.

Address before: 511402 5-13 / F, West Tower, building C, 274 Xingtai Road, Shiqiao street, Panyu District, Guangzhou City, Guangdong Province

Patentee before: GUANGZHOU BAIGUOYUAN INFORMATION TECHNOLOGY Co.,Ltd.

TR01 Transfer of patent right