我知道在开发解决方案时,我们应该至少有3种不同的环境:
- 开发:程序员可以随时更改和推送更改,以便快速测试他们的代码并与其他更改集成,而不必担心破坏任何东西-它与TEST数据库和服务相关;
- UAT:开发人员应该尊重UAT,因为它应该包含有关硬件的生产环境的“尽可能好”的副本,不同之处在于该环境通过生产数据的可编辑副本连接到UAT数据库-问答团队和用户都使用它来验证将要投入生产的变更
- 生产:真实交易。
我在SoftwareEngineering上研究了这个问题,在ServerFault 上研究了这个问题,它们在暂存环境的含义上似乎有所不同。另外,有关该主题的Wikipedia页面指出:
暂存环境的主要用途是在将所有安装/配置/迁移脚本和过程应用于生产环境之前对其进行测试。这样可以确保对生产环境的所有主要和次要升级都能在最短的时间内可靠地完成而不会出错。
对我来说,登台等于UAT,您必须在UAT上测试应用程序和部署过程,然后才能进入现实世界。因此,我们将对UAT所做的更改以与推送到生产的方式相同的方式推送到软件包中,完全自动化,并在生产环境中进行所有应有的仪式。
话虽如此,UAT环境和暂存环境之间的适当区别是什么?
-
编辑:为了清楚起见,我在考虑Web应用程序,无论是Internet网站还是Intranet网站。没有“表单”应用或移动应用。