当前位置:网站首页>“配置”是把双刃剑,带你了解各种配置方法
“配置”是把双刃剑,带你了解各种配置方法
2022-08-05 01:28:00 【壹小俊】
什么是配置
很多人分不清配置和配置管理,但其实它们是完全不同的概念。
配置管理:是通过技术或行政手段对软件产品及其开发过程和生命周期进行控制、规范的一系列措施。它的目标是记录软件产品的演化过程,确保软件开发者在软件生命周期的各个阶段都能得到精确的产品配置信息。
配置:是指独立于程序之外,但又对程序产生作用的可配变量。也就是说,同一份代码在不同的配置下,会产生不同的运行结果。
从上面的定义中,你可以看到配置和配置管理有着本质上的不同:配置管理服务于软件研发过程,而配置则服务于程序本身。
作为一名程序员,开发时经常要面对不同的运行环境:开发环境、测试环境、生产环境、内网环境、外网环境等等。不同的环境,相关的配置一般不一样,比如数据源配置、日志文件配置,以及一些软件运行过程中的基本配置等。
另外,你也会遇到一些业务上的,以及逻辑上的配置。比如,针对不同地域采取不同的计费逻辑,计费逻辑又要根据这些地域的需要随时调整。
如果我们把这些信息都硬编码在代码里,结果就是:每次发布因为环境不同,或者业务逻辑的调整,都要修改代码。而代码一日被修改,就需要完整的测试,那么变更的代价将是巨天的。
因此,我们往往会通过“配置”来解决这些问题。
但是,“配置”本身也很讲究。在什么阶段进行配置,采用什么手段进行配置,都将直接影响持续交付的效果。
那么,接下来我就跟你详细聊聊各种配置方法。
构建时配置
以Maven为例,实现多环境的构建可移植性需要使用profile。profile是一组可选的配置,可以用来设置或者覆盖配置默认值。通过不同的环境激活不同的profile,可以实现构建的可移植性。我们可以看一个简单
边栏推荐
- Getting Started with Kubernetes Networking
- 自定义线程池
- Memory Forensics Series 1
- 居民用水问题
- 软件测试技术之最有效的七大性能测试技术
- 【机器学习】21天挑战赛学习笔记(二)
- Activity Recommendation | Kuaishou StreamLake Brand Launch Conference, witness together on August 10!
- Software testing interview questions: How many types of software are there?
- Gartner Hype Cycle:超融合技术将在2年内到达“生产力成熟期”
- KingbaseES V8 GIS数据迁移方案(2. Kingbase GIS能力介绍)
猜你喜欢
### Error querying database. Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionExcep
JUC thread pool (1): FutureTask use
数仓4.0(三)------数据仓库系统
Creative code confession
行业现状?互联网公司为什么宁愿花20k招人,也不愿涨薪留住老员工~
第十一章 开关级建模
记录谷歌gn编译时碰到的一个错误“I could not find a “.gn“ file ...”
[Redis] Redis installation under Linux
DHCP的工作过程
面试汇总:为何大厂面试官总问 Framework 的底层原理?
随机推荐
C语言基础知识 -- 指针
深度学习原理学习小结 - Self-Attention/Transformer
2022 Nioke Multi-School Training Session H Question H Take the Elevator
【翻译】CNCF对OpenTracing项目的存档
ORA-00257
硬实力和软实力,哪个对测试人来说更重要?
2021年11月网络规划设计师上午题知识点(上)
The principle of NMS and its code realization
JVM类加载简介
JWT简单介绍
GCC:头文件和库文件的路径
LiveVideoStackCon 2022 上海站明日开幕!
软件基础的理论
码率vs.分辨率,哪一个更重要?
5.PCIe官方示例
新唐NUC980使用记录:在用户应用中使用GPIO
Binary tree [full solution] (C language)
How DHCP works
AI+小核酸药物|Eleven完成2200万美元种子轮融资
缺陷检测(图像处理部分)