如何搭建一个支持多版本服务并存的测试环境?
- 内容介绍
- 文章标签
- 相关推荐
如何搭建一个支持多版本服务并存的测试环境那个?
在项目开发过程中, 经常会出现多个迭代并行开发测试的场景,所以呢需要后台的存储资源共享但后台服务并存多个版本多个测试环境,以方便进行多迭代版本的并行开发测试。
真香! 那如何实现这一目标呢?下面我们将详细介绍如何搭建一个支持多版本服务并存的测试环境。

需求分析
先说说 我们需要明确需求:系统要在测试域名不变的前提下在页面提供一个浮层去切换不同的测试环境,方便测试同学进行不同需求的并行测试,挽救一下。。
为了实现这一目标, 我们需要解决以下几个问题:
- 多版本服务的并行运行
- 请求如何转发
- 配置文件处理
- 定时任务抢占问题的解决
解决方案
经过讨论,我们决定使用对请求的header 功力不足。 中特定的字段值来确定请求如何被转发的方案。
比如我们将使用nginx ingress来实现请求的转发。下面是一个简单的示例:
location ~ //.+ {
set $target_service "backend";
if {
set $target_service "backend-test";
proxy_pass http://$target_-:8000;
}
proxy_pass http://$target_-:8000;
}
但是这种方法存在一些问题。先说说nginx中的if规则非常特殊,和编程语言直觉中的if规则很不一样,可能会导致意想不到的后果,最终的最终。。
如何搭建一个支持多版本服务并存的测试环境那个?
在项目开发过程中, 经常会出现多个迭代并行开发测试的场景,所以呢需要后台的存储资源共享但后台服务并存多个版本多个测试环境,以方便进行多迭代版本的并行开发测试。
真香! 那如何实现这一目标呢?下面我们将详细介绍如何搭建一个支持多版本服务并存的测试环境。

需求分析
先说说 我们需要明确需求:系统要在测试域名不变的前提下在页面提供一个浮层去切换不同的测试环境,方便测试同学进行不同需求的并行测试,挽救一下。。
为了实现这一目标, 我们需要解决以下几个问题:
- 多版本服务的并行运行
- 请求如何转发
- 配置文件处理
- 定时任务抢占问题的解决
解决方案
经过讨论,我们决定使用对请求的header 功力不足。 中特定的字段值来确定请求如何被转发的方案。
比如我们将使用nginx ingress来实现请求的转发。下面是一个简单的示例:
location ~ //.+ {
set $target_service "backend";
if {
set $target_service "backend-test";
proxy_pass http://$target_-:8000;
}
proxy_pass http://$target_-:8000;
}
但是这种方法存在一些问题。先说说nginx中的if规则非常特殊,和编程语言直觉中的if规则很不一样,可能会导致意想不到的后果,最终的最终。。

