当前位置:网站首页>转转测试环境的标签域名实践
转转测试环境的标签域名实践
2022-08-04 10:05:00 【InfoQ】
一、问题背景
- 忘修改host,或浏览器存在socket缓存,host没生效。会访问更改线上数据,风险大。
- 需要频繁配置修改host,产品,运营,测试在测试环境作业中效率较低。
- 与第三方联调时,每次更换测试环境,都需要运维同学更改nginx配置。
二、测试环境演进介绍
2.1 固定数量测试环境

- 优点:流量隔离。
- 缺点:如果我们有500+的实例,如果靠简单的拉起实例,那么一个环境就需要拉起500个实例,5套环境就有2500+实例,机器资源浪费严重。所以我们需要让应用能在不同的环境复用。
2.2 多环境复用:动态环境 + 稳定环境

- 优点:既保证流量隔离,也能节约机器成本。
- 当前的缺点:联调,测试,产品验收时需要手动配置host,访问动态环境。
三、解决方案
3.1 原理
3.2 泛解析的使用场景
- 让域名支持无限的子域名(这也是泛域名解析最大的用途)。
- 防止用户错误输入导致的网站不能访问的问题(对于大型网站,不太适用,一般用URL重定向,将网页重定向到错误页面)。
- 可以让直接输入网址登陆网站的用户输入简洁的网址即可访问网站。
3.3 DNS泛解析配置

四、 标签域名在转转后台系统的落地
4.1 OMS协作平台标签域名改造点
- DNS配置域名泛解析和ngx_lua做流量分组(运维部负责)。
- sso服务扫码登录改造(架构部负责)。
- CI部署前端服务时,替换静态资源域名(工程效率部负责)。
- 多域名合一:前端和后端服务域名分别使用不同域名,废弃后端域名,只保留SCP前端域名。在nginx配置根据uri规则路由(后端&前端负责)。
- 前端服务获取浏览器输入host,动态拼接url(前端负责)。
4.2 请求流程图

五、标签域名使用方式和效果
5.1 OMS协作平台的使用方式
1. 标签域名访问
2.1.动态环境
CI平台申请服务标签tag
访问方式:https://oms-tag.zhuantest.com
2.3.线上环境:
访问方式:https://oms.zhuanzhuan.com
5.1 访问效果

边栏推荐
- leetcode动态规划经典例题——53.最大子数组和
- [Punctuality Atom STM32 Serial] Chapter 2 STM32 Introduction Excerpted from [Punctual Atom] MiniPro STM32H750 Development Guide_V1.1
- 【C补充】指向指针或函数的指针
- I am 37 this year, and I was rushed by a big factory to...
- safe-point(safepoint 安全点) 和 safe-region(安全区域)「建议收藏」
- 请问下Flink SQL如何写hologres分区表?我想要每天一个分区
- MySQL binlog都有哪些模式?
- Qt:小的任务管理器(task)
- Four common methods of network attacks and their protection
- OAK-FFC-4P全网首次测试
猜你喜欢
随机推荐
架构设计杂谈
用匿名函数定义函数_c语言最先执行的函数是
学习在php中分析switch与ifelse的执行效率
在测试集上训练,还能中CVPR?这篇IEEE批判论文是否合理?
2022 Cloud Native Computing代表厂商 | 灵雀云第三次入选Gartner中国ICT技术成熟度曲线报告
Detailed explanation of MSTP protocol configuration on Layer 3 switches [Huawei eNSP experiment]
SVG 的 path 属性绘制图形
参数优化。
【C补充】指向指针或函数的指针
【COS 加码福利】COS 用户实践有奖征文,等你来投稿!
物体颜色的来源
MySQL核心SQL:结构化查询语句SQL、库操作、表操作、CRUD
leetcode经典例题——49.字母异位词分组
Win7C盘不能扩大怎么办?Win7C盘扩展卷不能点怎么解决
常用的输入对象
[Punctuality Atom STM32 Serial] Chapter 2 STM32 Introduction Excerpted from [Punctual Atom] MiniPro STM32H750 Development Guide_V1.1
pyvista 的介绍与使用
Mysql应用日志时间与系统时间相差八小时
无线Mesh自组网方案,CV5200无线模组应用,支持高清数据远距离传输
How Oracle for current library or certain library data on the same server number?