pro、pre、test、dev环境

今天给大家介绍一下开发过程中,四个环境以及各自的功能特点,四个环境分别是:pro、pre、test、dev环境,中文名字:生产环境、灰度环境、测试环境、开发环境,其实大家看英文应该就差不多可以看出来对应的是什么环境。

环境介绍:

pro环境:生产环境,面向外部用户的环境,连接上互联网即可访问的正式环境。

pre环境:灰度环境,外部用户可以访问,但是服务器配置相对低,其它和生产一样。

test环境:测试环境,外部用户无法访问,专门给测试人员使用的,版本相对稳定。

dev环境:开发环境,外部用户无法访问,开发人员使用,版本变动很大。

分成四个环境原因:

大多数人都知道四个环境指的是什么,但是很多人却不知道为什么要这么区别,甚至为了省事就只有dev和pro环境。如果项目没有上线之前没有问题,如果项目上线之后就会有非常麻烦的事情发生。下面我们针对这四种环境,来分析一下对应的各种场景。

dev+pro:

如果我们只有dev和pro环境,pro突然发现bug,需要紧急处理,只有两个环境,这个时候我们要如何解决呢???

首先dev现在已经更新到1.1.0,而pro现在才1.0.0,所以这个时候我们需要重新创建一个brunch分支,这边我们可以叫做1.0.0.1,然后修改代码之后需要放到dev环境上面进行测试,这个时候就会变成如下所示状态:

然后测试通过之后,我们需要将1.0.0.1发布到pro环境,然后合并1.0.0.1的代码到1.1.0中,最后将dev环境修改为1.1.1,如下所示:

在dev1.0.0.1测试期间,所以开发工作全部得停止,必须等测试通过发布到生产上面才可以,如果仅仅只有两个环境,代价实在是太大了!!

dev+test+pro

如果我们多了一个test环境情况就会好很多了,比如上面说所的问题,我们就可以这么来处理。

我们可以在test1.0.0上面直接修改,修改后的版本是1.0.0.1,测试通过之后直接发布到pro环境即可。然后再将test中1.0.0.1代码合并到1.1.0,最后dev的版本升一级就可以了。

这样的好处就是不会影响dev开发环境,不管怎么修改test,都不会造成dev暂停。

dev+test+pre+pro:

如果test环境和pro环境版本不同步,还是会有问题存在,比如test环境在测试1.0.1版本的代码而生产上面运行的是pro环境的代码,这个时候pro出现问题修改的时候就会比较麻烦。

这个时候和之前的做法一样,创建一个新的brunch分支(1.0.0.1)然后在1.0.0.1中修复bug,然后发布到test最新版本中,测试通过之后发布到pro环境中。然后就是复杂的合代码操作了,将1.0.0.1代码合并到1.0.1中,将dev的1.1.0添加上修复的代码变成1.1.1。

这种情况下,首先在test测试期间,1.0.1的测试工作会停止,其次步骤太繁琐,所以这边我们新增了pre环境。

我们只要保证pre的版本和pro环境的版本一致,就可以解决上面的问题了。如上图所示,我们只需要在pre的1.0.0环境上面修复bug就可以了,修复好之后发布到pro环境就可以了,然后将代码同步到test和dev中即可。

这样以后不管pro遇到什么问题,我们都可以按照上面的步骤来解决。

总结:

四个环境最大的好处就是各司其职,既不会影响开发,也不会影响测试工作。而且增加一个pre环境也可以尽可能的模仿pro的真实环境,让测试结果更加准确。好了今天的内容就介绍到这边了,谢谢大家的阅读~

要更多干货、技术猛料的孩子,快点拿起手机扫码关注我,我在这里等你哦~

                                                       

  • 25
    点赞
  • 175
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
2.4版本更新: 1、增加配置文件可视化设置功能 2、新增redis2.4.5服务和PHP的redis扩展 3、更新phpmyadmin到3.5.5.0 4、更新nginx到1.3.10 5、更新php到5.4.10并更新了PHP的SQL SERVER扩展 6、更新mysql到5.5.29 2.4各服务版本: php 5.4.10 mysql 5.5.29 (user:root;password:root) nginx 1.3.10 memcached 1.4.4 phpmyadmin 3.5.5.0 redis 2.4.5 /////////////////////////////////////////////////////////////////////////////////////////////// 2.3版本更新: 1、加入错误路径检测 2、自动读取nginx的访问地址 3、自动读取nginx的访问端口 4、更新nginx到1.0.11稳定版(1.1.10个别机子会意外退出) 5、更新phpmyadmin到3.4.9 2.3各服务版本: php 5.3.8 mysql 5.5.14 (user:root;password:root) nginx 1.0.11 memcached 1.4.4 phpmyadmin 3.4.9 2.2版本更新 1、更新php到5.3.8 2、更新nginx到1.1.10 3、更新memcached到1.4.5 4、Zerver只能启动一个实例 5、程序运行时不重启更新子目录 6、服务启动状态错误,修复 7、加入memcache的php扩展 8、加入sqlserver的php扩展(注:不是php5.2自带的mssql) /////////////////////////////////////////////////////////////////////////////////////////////// 2.1版本更新: 1、增加localhost下子目录的快捷访问,自动读取 2、增加根目录下子目录的快捷访问,自读读取 3、修复nginx重启延迟造成的错误 4、加入重启全部服务主菜单 5、鼠标移到托盘时显示目前各个服务的状态 2.1各服务器版本: php 5.3.6 mysql 5.5.14 (user:root;password:root) nginx 1.0.4 memcached 1.4.4 /////////////////////////////////////////////////////////////////////////////////////////////// zerver2可能需要安装的运行库: vc++2008 .Net Framework 2005 声明: 1、zerver适合放在开发环境用于开发调试,并不建议放在生产环境; 2、zerver是作者(也就是我)利用业余时间开发的,完全免费,并没有商业目的; 3、zerver只涉及各个服务的启动与关闭,配置文件的读写,之于杀毒软件的误报,各位忽略即可。
### 回答1: Dev-C++ 中的预告提示(pre-prompt)通常是在代码中存在语法错误或其他编译问题时出现的。解决这个问题的方法有以下几种: 1. 检查代码:检查代码是否有语法错误或其他编译问题,并修复错误。 2. 重新编译代码:如果代码已经修复,请重新编译代码。 3. 重启Dev-C++:如果仍然存在问题,请重启Dev-C++,然后重试编译。 4. 更新Dev-C++:如果仍然存在问题,请考虑更新Dev-C++至最新版本,以确保所使用的软件是最新的。 希望这些信息能帮助您解决Dev-C++中的预告提示问题。 ### 回答2: 在Dev C中进行调试时,遇到pre-prompt窗口的问题可以通过以下方法解决。 首先,pre-prompt窗口是由于在代码中使用了system函数而导致的。system函数可以执行一些系统命令,但它也会在命令执行后暂停程序的运行,等待用户输入任意键才会继续运行。因此,在调试过程中,pre-prompt窗口会出现并等待用户操作,进一步导致调试过程中断。 为了解决这个问题,我们可以考虑以下两种方法: 1. 删除或注释掉使用system函数的代码:如果使用system函数的代码不是必须的,或者不依赖于用户的输入,那么可以直接删除或注释掉这部分代码。这样可以避免pre-prompt窗口的出现,程序可以继续正常运行。 2. 修改代码以避免pre-prompt窗口的出现:如果使用system函数的代码是必要的,并且依赖于用户的输入,我们可以通过将system函数封装到一个函数中,并在函数中添加相应的逻辑判断,避免调试时出现pre-prompt窗口。例如,在函数中可以通过判断是否处于调试模式来决定是否执行system函数以及是否等待用户输入。 总之,解决Dev C中调试时pre-prompt窗口的问题,一方面可以删除或注释掉使用system函数的代码,另一方面可以修改代码以避免pre-prompt窗口的出现。这样可以使调试过程更加顺利地进行。 ### 回答3: 在Dev C++中调试时,遇到pre-prompt问题时,可以采取以下解决方法。 首先,我们需要了解pre-prompt的含义。pre-prompt是指在程序运行时,出现一个提示框,在提示框中等待用户输入特定的数据或命令。由于这个提示框会暂停程序的执行,因此会影响程序的调试。 要解决pre-prompt问题,一个常用的方法是将输入数据或命令在代码中直接设置好,以避免出现预期之外的等待。这样就能够使程序的执行不受干扰,方便进行调试。 另外一个解决方法是使用自动化测试。可以编写一个测试脚本,通过模拟用户输入,代替手动输入,来完成程序的运行和调试。这样能够更好地控制程序的输入和输出,提高调试效率。 另外,还可以使用条件编译来解决pre-prompt问题。使用条件编译的方式,可以根据不同的调试阶段选择性地启用或禁用pre-prompt代码,从而在调试时避免pre-prompt的干扰。 最后,如果以上方法无法解决pre-prompt问题,也可以考虑使用其他集成开发环境(IDE)进行调试。例如,可以尝试使用Visual Studio等IDE,它们提供了更强大的调试功能,可以更好地处理pre-prompt问题。 综上所述,对于Dev C++中调试时遇到的pre-prompt问题,可以通过设置输入数据、使用自动化测试、条件编译或尝试其他IDE等方法进行解决。这将提高调试效率,便于我们找出程序中的问题。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值