网站备案号 链接,广告制作专业,深圳微商城网站设计多少钱,软件开发流程八个步骤模板java开发中各个环境的适用场景
一.开发环境
在系统开发的经典模型#xff0c;一般会分成 2 类 5 种环境#xff1a; 【线下】本地环境(local)、开发环境(dev)、测试环境(test) 【线上】预发布环境(stage)、生产环境(prod) 每个环境、每个项目使用独立的二级域名 线下、线…
java开发中各个环境的适用场景
一.开发环境
在系统开发的经典模型一般会分成 2 类 5 种环境 【线下】本地环境(local)、开发环境(dev)、测试环境(test) 【线上】预发布环境(stage)、生产环境(prod) 每个环境、每个项目使用独立的二级域名 线下、线上各一套 MySQL 数据库多个环境共享使用 每个环境对应一个配置文件后端使用 [application-{env}.yaml]文件前端使用 [.env.{env} ]文件
二.本地环境
后端工程师使用 application-local.yaml 配置文件在本地电脑启动后端服务连接线下 MySQL 数据库。考虑到不影响 dev、test 环境会配置禁用定时任务、MQ 集群消费的执行。
前端工程师也会在本地电脑启动前端服务一般不使用 .env.local 配置文件而是使用 .env.dev 配置文件访问 dev 环境的后端服务。如果需要和后端进行本地联调可以使用 .env.local 配置文件。
三.开发环境
dev 环境的用户是前端工程师、后端工程师主要用于前后端的联调、又或者功能开发完后的自测。
一些公司可能不提供 dev 环境直接使用 test 环境适合团队规模较小的团队可以降低服务器的成本。
不过测试工程师可能比较反感 dev 和 test 环境不隔离因为他们是按照测试用例一轮一轮的进行验收。这个时候如果前端或者后端工程师部署了 test 环境“破坏”了他当前轮次的验收。
四.测试坏境
test 环境的用户是产品经理、测试工程师主要用于他们的功能验收。
考虑到 test 环境的稳定性一般建议由测试工程师使用 Jenkins 等工具完成该环境的部署。
五.预发布环境
stage 环境的用户是产品经理、测试工程师连接线上 MySQL 数据库基于真实的数据进行功能的全回归测试。
因为数据更加真实且更具多样性所以往往也会测试出较多的 Bug。比较好的解决方案是将线上数据库定期脱敏导入线下数据库。
考虑到 stage 环境的安全性一般由技术经理、运维工程师进行部署。
一些公司可能不提供 stage 环境直接上线到 production 环境风险非常高容易产生较多报错。
六.生产环境
production 环境的用户是真实用户即线上环境。一般发布上线时会进行核心功能的快速测试避免主流程存在问题。
考虑到 production 环境的问题排查效率会给技术核心开放 MySQL 数据库的读权限。
参考https://doc.iocoder.cn/dev-env/#_1-%E6%9C%AC%E5%9C%B0%E7%8E%AF%E5%A2%83