一.简介
在程序开发到上线,由多个系统组成,通常是三个阶段:开发->测试->生产
开发环境(DEV):开发环境是程序猿们专门用于开发的服务器,配置可以比较随意, 为了开发调试方便,一般打开debug用来看程序运行情况。
测试环境(TEST):一般是克隆一份生产环境的配置,用于对开发完的程序进行测试和调整,在测试环境程序运行正常,才能给用户使用。
生产环境(PROD):对用户工作的环境,例如游戏开售,玩家可以登录到游戏。
其它环境: UAT环境:用户接受度测试 即验收测试,所以UAT环境主要是用来作为客户体验的环境。例如游戏的测试服,让用户提交进入到游戏中体验,然后收集数据,一测、二测这样。
仿真环境:顾名思义是和真正使用的环境一样的环境(即已经出售给客户的系统所在环境,也成为商用环境),所有的配置,页面展示等都应该和商家正在使用的一样,差别只在环境的性能方面。
二.上线发版流程
1.产品经理和运营人员收集用户需求,在jira里建议需求流程,转交给开发组长。
2.开发组长分配给具体模块的开发人员进行功能需求开发,预估开发进度后将多个需求作为一个版本内容进行开发,例如KF-2020-06-27。
3.开发人员进行需求分析、设计分析,测试环境进行开发,本地代码合并到test分支,自行用jenkins发布后让测试人员进行功能测试。
4.测试都没问题后,在发生产的日期前3-5天进行UAT环境发布,整体模拟生产发布,开发人员将test分支合并到uat分支,并填写发布表。
5.发布表包括要发布的模块、执行的SQL文件、要修改的配置文件、要添加的mq的topic等等信息
5.运维人员在当上进行UAT环境发布,测试人员进行功能测试。
6.开发人员将UAT分支合并到Master分支,开发组长进行审批,通过后打当天版本TAG进行留存。
7.运维人员在当天晚上进行生产环境发版