一种针对微服务环境的迭代方法及系统技术方案

技术编号:37846571 阅读:23 留言:0更新日期:2023-06-14 22:31
本发明专利技术公开了一种针对微服务环境的迭代方法及系统,属于微服务应用技术领域。本发明专利技术方法,包括:搭建用于微服务的测试环境,在所述测试环境中启动多个微服务,并将所述多个微服务作为默认服务;根据所述发生功能改变的微服务的改变功能,构建新微服务,并对所述新微服务进行测试;在对所述新微服务进行测试后,若再次访问所述多个微服务中的任意一个微服务,则将所述调用链路中发生功能改变的微服务替换为新微服务,且将多个微服务中的任意一个微服务的请求转发至新微服务,由所述新微服务向多个微服务中除任意一个微服务的其他微服务转发请求,调用微服务,完成微服务环境中微服务的迭代。本发明专利技术依托K8S,可以大幅提升服务部署效率。署效率。署效率。

【技术实现步骤摘要】
一种针对微服务环境的迭代方法及系统


[0001]本专利技术涉及
,并且更具体地,涉及一种针对微服务环境的迭代方法及系统。

技术介绍

[0002]现阶段大部分公司的应用架构均采用微服务方式,这样可以有效的较少项目之间的耦合性,提升项目迭代的效率,但项目微服务化后即会面临应用增多,管理变得更加复杂,其中影响最大的可能就是当同一个服务多个功能同时迭代开发时,流程测试如何进行。
[0003]常规的解决办法可能是要部署一个新的应用,且需要部署很多其他依赖的服务,这个就会导致大量的无用部署工作。

技术实现思路

[0004]针对上述问题,本专利技术提出了一种针对微服务环境的迭代方法,包括:
[0005]搭建用于微服务的测试环境,在所述测试环境中启动多个微服务,并将所述多个微服务作为默认服务;
[0006]确定访问所述多个微服务中的任意一个微服务时,调用微服务的调用链路,当所述多个微服务中除所述多个微服务中的任意一个微服务的功能发生改变,且多个微服务中的其他微服务的功能未发生改变时,则根据所述发生功能改变的微服务的改变功能,构建新微服务,并对所述新微服务进行测试;
[0007]在对所述新微服务进行测试后,若再次访问所述多个微服务中的任意一个微服务,则将所述调用链路中发生功能改变的微服务替换为新微服务,且将多个微服务中的任意一个微服务的请求转发至新微服务,由所述新微服务向多个微服务中除任意一个微服务的其他微服务转发请求,并对所述调用链路进行调整,以得到不包括任意一个微服务的调用链路,基于不包括任意一个微服务的调用链路,调用微服务,完成微服务环境中微服务的迭代。
[0008]可选的,构建新微服务后,记录新微服务的id及项目信息,基于所述id及项目信息,为浏览器设置一个使用新微服务id的cookie。
[0009]可选的,方法还包括:若再次访问所述多个微服务中的任意一个微服务,对所述多个微服务中的任意一个微服务经过openresty转发,当openresty获取到微服务的cookie后,根据cookie查询数据库中的信息,并将多个微服务中的任意一个微服务的请求转发到新微服务。
[0010]可选的,构建新微服务,包括:针对发生功能改变的微服务,通过K8S构建新微服务。
[0011]再一方面,本专利技术还提出了一种针对微服务环境的迭代系统,包括:
[0012]环境搭建单元,用于搭建用于微服务的测试环境,在所述测试环境中启动多个微服务,并将所述多个微服务作为默认服务;
[0013]测试单元,用于确定访问所述多个微服务中的任意一个微服务时,调用微服务的调用链路,当所述多个微服务中除所述多个微服务中的任意一个微服务的功能发生改变,且多个微服务中的其他微服务的功能未发生改变时,则根据所述发生功能改变的微服务的改变功能,构建新微服务,并对所述新微服务进行测试;
[0014]迭代单元,用于在对所述新微服务进行测试后,若再次访问所述多个微服务中的任意一个微服务,则将所述调用链路中发生功能改变的微服务替换为新微服务,且将多个微服务中的任意一个微服务的请求转发至新微服务,由所述新微服务向多个微服务中除任意一个微服务的其他微服务转发请求,并对所述调用链路进行调整,以得到不包括任意一个微服务的调用链路,基于不包括任意一个微服务的调用链路,调用微服务,完成微服务环境中微服务的迭代。
[0015]可选的,构建新微服务后,记录新微服务的id及项目信息,基于所述id及项目信息,为浏览器设置一个使用新微服务id的cookie。
[0016]可选的,迭代单元还用于:若再次访问所述多个微服务中的任意一个微服务时,对所述多个微服务中的任意一个微服务经过openresty转发,当openresty获取到微服务的cookie后,根据cookie查询数据库中的信息,并将多个微服务中的任意一个微服务的请求转发到新微服务。
[0017]可选的,构建新微服务,包括:针对发生功能改变的微服务,通过K8S构建新微服务。
[0018]再一方面,本专利技术还提供了一种计算设备,包括:一个或多个处理器;
[0019]处理器,用于执行一个或多个程序;
[0020]当所述一个或多个程序被所述一个或多个处理器执行时,实现如上述所述的方法。
[0021]再一方面,本专利技术还提供了一种计算机可读存储介质,其上存有计算机程序,所述计算机程序被执行时,实现如上述所述的方法。
[0022]与现有技术相比,本专利技术的有益效果为:
[0023]本专利技术提供了一种针对微服务环境的迭代方法,包括:搭建用于微服务的测试环境,在所述测试环境中启动多个微服务,并将所述多个微服务作为默认服务;确定访问所述多个微服务中的任意一个微服务时,调用微服务的调用链路,当所述多个微服务中除所述多个微服务中的任意一个微服务的功能发生改变,且多个微服务中的其他微服务的功能未发生改变时,则根据所述发生功能改变的微服务的改变功能,构建新微服务,并对所述新微服务进行测试;在对所述新微服务进行测试后,若再次访问所述多个微服务中的任意一个微服务,则将所述调用链路中发生功能改变的微服务替换为新微服务,且将多个微服务中的任意一个微服务的请求转发至新微服务,由所述新微服务向多个微服务中除任意一个微服务的其他微服务转发请求,并对所述调用链路进行调整,以得到不包括任意一个微服务的调用链路,基于不包括任意一个微服务的调用链路,调用微服务,完成微服务环境中微服务的迭代。本专利技术依托K8S,可以大幅提升服务部署效率,并增加openresty、二开http客户端,可以使整个开发、测试流程变得更加灵活,可以随意扩展任务,随意选择任务环境,即提升了运维效率,也提升了项目迭代效率。
附图说明
[0024]图1为本专利技术一种针对微服务环境的迭代方法的流程图;
[0025]图2为本专利技术一种针对微服务环境的迭代系统的结构图。
具体实施方式
[0026]现在参考附图介绍本专利技术的示例性实施方式,然而,本专利技术可以用许多不同的形式来实施,并且不局限于此处描述的实施例,提供这些实施例是为了详尽地且完全地公开本专利技术,并且向所属
的技术人员充分传达本专利技术的范围。对于表示在附图中的示例性实施方式中的术语并不是对本专利技术的限定。在附图中,相同的单元/元件使用相同的附图标记。
[0027]除非另有说明,此处使用的术语(包括科技术语)对所属
的技术人员具有通常的理解含义。另外,可以理解的是,以通常使用的词典限定的术语,应当被理解为与其相关领域的语境具有一致的含义,而不应该被理解为理想化的或过于正式的意义。
[0028]实施例1:
[0029]本专利技术提出了一种针对微服务环境的迭代方法,如图1所示,包括:
[0030]步骤1、搭建用于微服务的测试环境,在所述测试环境中启动多个微服务,并将所述多个微服务作为默认服务;
[0031]步骤2、确定访问所述多个微服务中的任意一个微服务时,调用微服务的调用链路,当本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种针对微服务环境的迭代方法,其特征在于,所述方法包括:搭建用于微服务的测试环境,在所述测试环境中启动多个微服务,并将所述多个微服务作为默认服务;确定访问所述多个微服务中的任意一个微服务时,调用微服务的调用链路,当所述多个微服务中除所述多个微服务中的任意一个微服务的功能发生改变,且多个微服务中的其他微服务的功能未发生改变时,则根据所述发生功能改变的微服务的改变功能,构建新微服务,并对所述新微服务进行测试;在对所述新微服务进行测试后,若再次访问所述多个微服务中的任意一个微服务,则将所述调用链路中发生功能改变的微服务替换为新微服务,且将多个微服务中的任意一个微服务的请求转发至新微服务,由所述新微服务向多个微服务中除任意一个微服务的其他微服务转发请求,并对所述调用链路进行调整,以得到不包括任意一个微服务的调用链路,基于不包括任意一个微服务的调用链路,调用微服务,完成微服务环境中微服务的迭代。2.根据权利要求1所述的方法,其特征在于,所述构建新微服务后,记录新微服务的id及项目信息,基于所述id及项目信息,为浏览器设置一个使用新微服务id的cookie。3.根据权利要求1所述的方法,其特征在于,所述方法还包括:若再次访问所述多个微服务中的任意一个微服务,对所述多个微服务中的任意一个微服务经过openresty转发,当openresty获取到微服务的cookie后,根据cookie查询数据库中的信息,并将多个微服务中的任意一个微服务的请求转发到新微服务。4.根据权利要求1所述的方法,其特征在于,所述构建新微服务,包括:针对发生功能改变的微服务,通过K8S构建新微服务。5.一种针对微服务环境的迭代系统,其特征在于,所述系统包括:环境搭建单元,用于搭建用于微服务的测试环境,在所述测试环境中启动多个微服务,并将所述多个微服务作为默认服务;测试单元,用于确定访问所述多个微服务中的任意一个微...

【专利技术属性】
技术研发人员:韩龙森杜彦亮
申请(专利权)人:航信云享科技有限公司
类型:发明
国别省市:

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

1