微服务的升级方法与升级装置制造方法及图纸

技术编号:18425968 阅读:36 留言:0更新日期:2018-07-12 01:54
本申请提供了一种微服务的升级方法与升级装置,该升级方法包括:确定待升级的至少一个微服务;确定该至少一个微服务部署的至少两个节点;根据升级策略,将该至少两个节点划分为具有不同优先级的多个组,其中,每个组包括按照该升级策略确定的至少一个节点,该至少一个微服务中同一个微服务部署的节点至少属于该多个组中的两个组;按照该多个组的优先级,对该至少一个微服务进行升级,因此,能够较好地实现微服务的升级管理,从而可以提高微服务升级的整体效率。

The upgrading method and upgrade device of micro service

The present application provides an upgrading method and an upgrade device for a micro service, which includes determining at least one micro service to be upgraded; determining at least two nodes of at least one micro service deployment; according to an upgrade strategy, the at least two nodes are divided into a plurality of groups with a different priority, each of which is a plurality of groups. The group includes at least one node determined according to the upgrade strategy, the node deployed by the same micro service in at least one micro service belongs to at least two groups in the plurality of groups; the at least one micro service is upgraded according to the priority of the multiple groups, so that the upgrade management of the micro service can be better implemented, It can improve the overall efficiency of the micro service upgrade.

【技术实现步骤摘要】
微服务的升级方法与升级装置
本申请涉及计算机
,并且更具体地,涉及一种微服务的升级方法与升级装置。
技术介绍
微服务(Microservice)系统是当前互联网非常流行的云化分布式系统。微服务是指功能上高内聚、低耦合,可独立开发、编译、测试、发布、部署、升级、运维的最小软件单元。零中断业务升级是微服务系统的一个很重要的功能。零中断业务升级功能指的是,在一个微服务升级的整个过程中,该微服务可以对外提供连续不间断的业务响应能力。微服务系统具备了零中断业务升级功能后,可以在微服务升级过程中也能实现业务零中断。实现业务零中断的根本在于,同一个微服务必须做到多服务实例部署,并且在升级该微服务时,对该微服务的多个服务实例按照时间先后顺序至少做两次升级,保证在每次升级时都有“活着”的微服务实例可以向用户提供业务响应服务。应理解,同一微服务的不同微服务实例提供完全一致的功能。在微服务系统中,部署微服务实例的载体可以称为节点,具体地,该节点可以是操作系统或虚拟机。例如,分别在节点1、节点2和节点3上部署微服务1的服务实例,即实现了微服务1的多服务实例部署。当前技术中,在升级一个微服务时,对该微服务部署的节点按照时间先后顺序一个接一个依次进行升级。例如,微服务1分别在节点1、节点2和节点3上部署了微服务实例,在升级该微服务1时,首先升级节点1上的微服务实例,与此同时,利用节点2和/或节点3上的微服务实例向用户提供业务响应;完成节点1上微服务实例的升级后,升级节点2上的微服务实例,与此同时,利用节点1和/或节点3上的微服务实例向用户提供业务响应;完成节点2上微服务实例的升级后,升级节点3上的微服务实例,与此同时,利用节点1和/或节点2上的微服务实例向用户提供业务响应。上述可知,现有的微服务升级方案缺乏对微服务升级的有效管理,例如,面对大批量需要升级的微服务时,不便于升级管理。
技术实现思路
本申请提出一种微服务的升级方法与升级装置,能够较好地实现微服务的升级管理,从而可以提高微服务升级的整体效率。第一方面,提供一种微服务的升级方法,其特征在于,包括:确定待升级的至少一个微服务;确定所述至少一个微服务部署的至少两个节点;根据升级策略,将所述至少两个节点划分为具有不同优先级的多个组,其中,每个组包括按照所述升级策略确定的至少一个节点,所述至少一个微服务中同一个微服务部署的节点至少属于所述多个组中的两个组;按照所述多个组的优先级,对所述至少一个微服务进行升级。在本方案中,根据升级策略,将待升级的微服务部署的节点划分为具有不同优先级的多个组,换句话说,根据该升级策略确定该多个组的组数(即升级的次数),根据该升级策略确定每一组的节点(即每次升级的节点以及节点数),相对于现有技术只是逐节点地升级微服务,本申请提供的方案能够较好地实现微服务的升级管理,从而可以提高微服务升级的整体效率。结合第一方面,在第一方面的一种可能的实现方式中,该升级策略可以为下列策略中的任一种:业务性能优先策略,升级效率优先策略与最小升级批次策略。具体地,该业务性能优先策略的宗旨是,在微服务升级过程中以保障业务性能为前提,将微服务升级对业务性能的影响降低到最小。该升级效率优先策略的宗旨是,在微服务升级过程中首要考虑升级效率。该最小升级批次策略的宗旨是,在微服务升级过程中尽量减小升级的次数。结合第一方面,在第一方面的一种可能的实现方式中,所述升级策略为业务性能优先策略,所述根据升级策略,将所述至少两个节点划分为具有不同优先级的多个组,包括:根据所述业务性能优先策略,将所述至少两个节点划分为所述多个组,其中,第一组的优先级高于第二组的优先级,所述第一组的节点的活跃度低于所述第二组的节点的活跃度,所述活跃度用于指示节点的业务繁忙程度。在本方案中,将活跃度较高的节点划分到优先级较高的组中,将活跃度较低的节点划分到优先级较低的组中,换句话说,微服务升级时,先升级活跃度较低的节点,后升级活跃度较高的节点,从而可以在一定程度上降低微服务升级对业务性能的影响。可选地,在一种可能的实现方式中,所述升级策略为业务性能优先策略,该多个组中的每个组只包括一个节点。在本方案中,所述升级策略为业务性能优先策略,每次升级只升级一个节点,并且先升级活跃度较低的节点,后升级活跃度较高的节点,这样可以实现将微服务升级对业务性能的影响降低到最小。结合第一方面,在第一方面的一种可能的实现方式中,所述升级策略为升级效率优先策略,所述根据升级策略,将所述至少两个节点划分为具有不同优先级的多个组,包括:根据所述升级效率优先策略,将所述至少两个节点划分为所述多个组,其中,所述至少两个节点中升级时长大于第一阈值的节点被划分到所述多个组中的同一组。在本方案中,根据升级效率优先策略将待升级的微服务部署的节点划分为多个组,然后按照该多个组的优先级,对待升级的微服务进行升级,可以有效提高微服务升级的升级效率。结合第一方面,在第一方面的一种可能的实现方式中,所述升级策略为最小升级批次策略,所述根据升级策略,将所述至少两个节点划分为具有不同优先级的多个组,包括:根据所述最小升级批次策略,将所述至少两个节点划分为所述多个组,其中,所述多个组的组数小于第二阈值。作为一种可能的实现方式中,所述第二阈值等于2。在本方案中,根据最小升级批次策略将待升级的微服务部署的节点划分为多个组,然后按照该多个组的优先级,对待升级的微服务进行升级,相比于现有技术,能够减少微服务升级的次数。结合第一方面,在第一方面的一种可能的实现方式中,在业务繁忙的情况下,所述升级策略被确定为所述业务性能优先策略;或在业务空闲的情况下,所述升级策略被确定为所述升级效率优先策略;或在不关心业务性能或升级效率的情况下,所述升级策略被确定为所述最小升级批次策略。在本方案中,通过在不同应用场景下采用不同的升级策略升级微服务,从而可以实现对微服务升级的合理管理。结合第一方面,在第一方面的一种可能的实现方式中,所述升级方法还包括:在用户界面上呈现第一区域,所述第一区域包括用于用户选择的备选升级策略,所述备选升级策略包括业务性能优先策略,升级效率优先策略与最小升级批次策略;根据用户对所述备选升级策略的选择结果,确定所述升级策略。在本方案中,通过在用户界面呈现升级策略,使得用户可以根据需求选择合适的升级策略,然后根据用户选择的升级策略执行微服务的升级,能够提供微服务升级的用户满意度。结合第一方面,在第一方面的一种可能的实现方式中,所述至少两个节点包括三个或三个以上的节点,所述多个组中的至少一个组包括两个或两个以上的节点。相对于现有技术中逐节点地升级微服务,本方案能够提高微服务升级的效率。结合第一方面,在第一方面的一种可能的实现方式中,所述确定待升级的至少一个微服务,包括:在用户界面上呈现第二区域,所述第二区域用于用户输入需要升级的微服务;根据用户在所述第二区域的输入信息,确定所述至少一个微服务。优选地,所述第二区域包括用于用户选择需要升级的微服务的备选微服务。在本方案,通过用户界面实现与用户交互,根据用户输入信息来确定待升级的微服务,并且在用户界面呈现待升级的微服务,使得管理人员可直观地看到待升级的微服务,可以提高微服务升级的用户满意度。结合第一方面,在第一方面的一本文档来自技高网
...

【技术保护点】
1.一种微服务的升级方法,其特征在于,包括:确定待升级的至少一个微服务;确定所述至少一个微服务部署的至少两个节点;根据升级策略,将所述至少两个节点划分为具有不同优先级的多个组,其中,每个组包括按照所述升级策略确定的至少一个节点,所述至少一个微服务中同一个微服务部署的节点至少属于所述多个组中的两个组;按照所述多个组的优先级,对所述至少一个微服务进行升级。

【技术特征摘要】
1.一种微服务的升级方法,其特征在于,包括:确定待升级的至少一个微服务;确定所述至少一个微服务部署的至少两个节点;根据升级策略,将所述至少两个节点划分为具有不同优先级的多个组,其中,每个组包括按照所述升级策略确定的至少一个节点,所述至少一个微服务中同一个微服务部署的节点至少属于所述多个组中的两个组;按照所述多个组的优先级,对所述至少一个微服务进行升级。2.根据权利要求1所述的升级方法,其特征在于,所述升级策略为业务性能优先策略,所述根据升级策略,将所述至少两个节点划分为具有不同优先级的多个组,包括:根据所述业务性能优先策略,将所述至少两个节点划分为所述多个组,其中,第一组的优先级高于第二组的优先级,所述第一组的节点的活跃度低于所述第二组的节点的活跃度,所述活跃度用于指示节点的业务繁忙程度。3.根据权利要求1所述的升级方法,其特征在于,所述升级策略为升级效率优先策略,所述根据升级策略,将所述至少两个节点划分为具有不同优先级的多个组,包括:根据所述升级效率优先策略,将所述至少两个节点划分为所述多个组,其中,所述至少两个节点中升级时长大于第一阈值的节点被划分到所述多个组中的同一组。4.根据权利要求1所述的升级方法,其特征在于,所述升级策略为最小升级批次策略,所述根据升级策略,将所述至少两个节点划分为具有不同优先级的多个组,包括:根据所述最小升级批次策略,将所述至少两个节点划分为所述多个组,其中,所述多个组的组数小于第二阈值。5.根据权利要求4所述的升级方法,其特征在于,所述第二阈值等于2。6.根据权利要求2至5中任一项所述的升级方法,其特征在于,在业务繁忙的情况下,所述升级策略被确定为所述业务性能优先策略;或在业务空闲的情况下,所述升级策略被确定为所述升级效率优先策略;或在不关心业务性能或升级效率的情况下,所述升级策略被确定为所述最小升级批次策略。7.根据权利要求1至5中任一项所述的升级方法,其特征在于,所述升级方法还包括:在用户界面上呈现第一区域,所述第一区域包括用于用户选择的备选升级策略,所述备选升级策略包括业务性能优先策略,升级效率优先策略与最小升级批次策略;根据用户对所述备选升级策略的选择结果,确定所述升级策略。8.根据权利要求1至7中任一项所述的升级方法,其特征在于,所述至少两个节点包括三个或三个以上的节点,所述多个组中的至少一个组包括两个或两个以上的节点。9.根据权利要求1至8中任一项所述的升级方法,其特征在于,所述确定待升级的至少一个微服务,包括:在用户界面上呈现第二区域,所述第二区域用于用户输入需要升级的微服务;根据用户在所述第二区域的输入信息,确定所述至少一个微服务。10.根据权利要求9所述的升级方法,其特征在于,所述第二区域包括用于用户选择需要升级的微服务的备选微服务。11.根据权利要求1至10中任一项所述的升级方法,其特征在于,所述升级方法还包括:在用户界面呈现第三区域,并在所述第三区域内呈现所述多个组。12.根据权利要求11所述的升级方法,其特征在于,所述第三区域设置有用户编辑模式,所述升级方法还包括:检测所述第三区域进入所述用户编辑模式;在所述用户编辑模式下,获取用户对所述多个组的编辑结果;所述按照所述多个组的优先级对所述至少一个微服务进行升级,包括:根据用户对所述多个组的编辑结果,对所述至少一个微服务进行升级。13.一种微...

【专利技术属性】
技术研发人员:胡圣东
申请(专利权)人:华为技术服务有限公司
类型:发明
国别省市:河北,13

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

1