一、环境介绍
1.dev环境
在平时开发的时候肯定会有测试环境,但是一方面测试环境构建的时间会比较漫长,所以一般一天就几次,所以在很多时候我们都需要本地进行debug调试。基于这种场景我们首先就需要一份dev环境(中文名称开发环境配置),通过dev配置我们就可以将数据库的地址、服务器的地址、redis、mongodb等地址,配置为自己的本地的服务器,方便我们进行bug调试。
2.test环境
本地开发环境毕竟和真实的环境差距还是很大的,不管从cpu、内存、数据等等这些来看都有很大的差别,最重要的是测试人员自己肯定没办法本地调试,这些非开发人员要参与测试,必须有一个测试环境用来做专门的测试平台。这个时候我们就需要新配置一个test环境(中文名称测试环境),通过test环境,我们的测试人员、app人员、开发人员都可以通过这个环境来做自己的工作。
3.prod环境
如果测试环境的项目经过严格的测试,要发布出去给外网普通用户来用的话,肯定需要一个给所有用户用的环境,这个环境就叫做prod环境(中文名称生产环境)。之前的test环境一般是公司内部局域网才可以访问,但是prod环境是所有只要能连接上互联网的用户都可以访问,没有网络的限制问题,而且prod环境是面向用户,所以一般服务器的性能都会比test环境高的多。
二、实际应用
重点来了,介绍了这么多的环境,那我们在开发过程中怎么进行环境配置呢,在服务器上面又是如何进行环境的区别的呢,不要着急,下面我们一一来介绍一下。
1.开发过程配置
SpringBoot项目本身就支持不同环境引用的支持,我们只需要在spring.profiles.active=‘环境的名称’,这样说可能会比较抽象,我们来看一下具体的列子,如下所示:
不同的配置文件必须开头是application-,结尾可以随意定义,这边我们用dev、test、prod分别来表示开发、测试、生产环境。然后我们在引用环境的时候只要在active后面加上相应的后缀就可以了(也就是application-后面的内容),通过这种方式我们在开发过程中就可以随意的进行不同环境的切换了。
2.jar方式配置
java -jar xxx.jar --spring.profiles.active=test
Dockerfile