1、什么是预发布环境? 预发布环境,就是线上环境、正式生产环境,为避免因为测试环境和线上环境的差异性等带来的缺陷漏测而设立的一套环境,其配置等基本和线上一致,只是预发布环境web服务器不在线上集成服务器范围之内,为单独的一台机器;
2、预发布环境不能被线上用户访问 通常这里的技术实现是这样的:把预发布环境的访问域名设置成和线上环境的不一样,通过配置host来访问预发布环境;
3、预发布环境和线上环境公用数据库,即预发布环境使用的是线上的数据库 问题:如果新版本程序需要更改表结构等,比如加个表字段,那么,部署到预发布环境时也需要更改表字段,这个可能会影响线上环境程序代码的运行,咋解决?
答案:
3.1 先把预发布环境使用的数据库切换为测试环境使用的数据库
3.2 根据实际部署过程,如果有必要,接着,可有针对性的测试下数据库的变更是否会影响线上当前代码程序的运行(注:个人想法)
3.3 把新代码部署到预发布环境,测试程序是否正常运行
3.4预发布测试完毕,如果没问题,先上线数据库,即在正式环境执行对应的数据库变更操作
3.5 紧接着,把预发布环境连接的数据库切换为线上环境使用的数据库,再次进行预发布环境的测试
3.6 最后,如果预发布环境测试通过,则把预发布环境的代码部署到线上生产环境。
注:
1、如果不需要更改数据库表结构等,则无需切换预发布环境环境使用的数据库,即预发布使用线上的数据库。
2、这里,因为预发布环境本身就是线上环境,测试完预发布,也基本代表线上环境测试完成。这样还可以避免发布到正式环境还得再测一遍的情况
网友评论