当前位置: 首页 > news >正文

软件应用开发的常见环境

一般来说,在小型项目中可能只有开发环境和生产环境;在中型项目中会有开发环境、staging environment、生产环境;在大型项目中会有开发环境、测试环境、staging environment、生产环境。

一、Dev Env / Development Environment 开发环境

开发环境是程序猿们专门用于开发的服务器,配置可以比较随意, 为了开发调试方便,一般打开全部错误报告。

二、QA Env / Test Environment 测试环境

测试环境帮助我们测试产品的某一个特定部分。它要求不同的配置和数据配置,因此测试环境没有一个一键生成式的配置方法(不同于 staging environment)。

三、Regression Environment 回归环境

如果同时有好几个人参与同一个项目,那么基于master分支可能拉出非常多的开发分支,那么当这些分支合并到master上后,master上的功能可能受到影响,这种情况下,会使用一个回归环境,部署master分支的代码。回归环境是最接近生产的一个版本。

四、Staging Environment

在较大的项目中,一般会有 staging environment。增加一个 staging environment 会增加硬件采购的成本(硬件最好和生产环境的硬件一样),并且还要进行配置并写入需要的数据。
在最后 Bugs 都修复之后,在产品上线之前,我们会在 Staging Environment 中复制一份生产环境的内容来测试产品。它可以帮助我们检测硬件的配置、服务 servers、数据库、caches 是否正确。

它会复制生产环境的所有依赖和配置。因此,测试人也可以在不影响用户使用的情况下,检查整个产品在真实场景下是否会出现问题。

Staging Environment 的作用是检查整个产品以及每一个组件是否在真实环境下能够正常工作,是对于真实情况的精确模拟。

简单地说,它是一个开发人员对于产品进行各种实验的舞台 stage,在这里我们可以进行各种试验,来确保给用户最佳的体验。

五、Prod/ Production Environment 生产环境

指正式提供对外服务的,一般会关掉错误报告,打开错误日志。可以理解为包含所有的功能的环境,任何项目所使用的环境都以这个为基础,然后根据客户的个性化需求来做调整或者修改。

生产环境在理想情况下是一比一复制的 staging environment。但在实际工作中并不总是这样,但是在生产环境中使用的硬件和软件和 staging environment 中的是非常相似的。

相关文章:

软件应用开发的常见环境

一般来说,在小型项目中可能只有开发环境和生产环境;在中型项目中会有开发环境、staging environment、生产环境;在大型项目中会有开发环境、测试环境、staging environment、生产环境。 一、Dev Env / Development Environment 开发环境 开…...

Rust中的iter(), into_iter(), iter_mut()

在Rust中,iter(), into_iter(), iter_mut()都是用于在集合类型上创建迭代器的方法。这三个方法各有不同,下面一一进行介绍。 iter(): iter() 方法创建一个不可变的引用迭代器。当你只想读取集合中的元素,而不想改变它们或消耗集合时&#xff…...

[SQL挖掘机] - 日期函数 - current_date

current_date函数时,它通常被用来获取当前的日期。它返回一个表示当前日期的日期值。 current_date函数没有任何参数,因此只需简单地调用它即可获得系统当前日期。 以下是一个示例: select current_date;这将返回当前日期,例如…...

JAVA面试总结-Redis篇章(三)——缓存雪崩

JAVA面试总结-Redis篇章(三)——缓存雪崩...

maven编译报错

参考链接:mvn打包No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK_51CTO博客_mvn打包命令 在执行 yum install -y java-1.8.0-opensdk命令后,使用maven去编译打包,结果报错, …...

HPC集群调度系统和计算系统

什么是计算云? 所谓的计算云指的是为计算业务优化的类云基础架构,它强调用云的方式解决计算问题,而不是将“计算”搬到现有的公有云或者容器云上。 目前公有云或者容器云(例如k8s)上的HPC解决方案本质上都是将现有的H…...

pg_archivecleanup清理wal日志

一、 注意事项 pg_archivecleanup代码中仅进行了wal日志文件名的对比,没有实现对WAL日志名及对应生成时间的判断。在WAL日志未被重命名时,时间与日志名顺序名一致,没有问题。一旦WAL日志被重命名,pg_archivecleanup清理就可能清理…...

继承中的访问级别

值得思考的问题 子类是否可以直接访问父类的私有成员? 思考过程 继承中的访问级别 面向对象中的访问级别不止是 public 和 private 可以定义 protected 访问级别 关键字 protected 的意义 修饰的成员不能被外界直接访问修饰的成员可以被子类直接访问 思考 为什…...

(学习日记)2023.06.09

写在前面: 由于时间的不足与学习的碎片化,写博客变得有些奢侈。 但是对于记录学习(忘了以后能快速复习)的渴望一天天变得强烈。 既然如此 不如以天为单位,以时间为顺序,仅仅将博客当做一个知识学习的目录&a…...

激光雷达-相机联合标定

https://f.daixianiu.cn/csdn/9499401684344864.html ros usb相机内参标定 ROS系统-摄像头标定camera calibration_berry丶的博客-CSDN博客...

[golang gin框架] 40.Gin商城项目-微服务实战之Captcha验证码微服务

本次内容需要 gin框架基础知识, golang微服务基础知识才能更好理解 一.Captcha验证码功能引入 在前面,讲解了微服务的架构等,这里,来讲解前面商城项目的 Captcha验证码 微服务 ,captcha验证码功能在前台,后端 都要用到 ,可以把它 抽离出来 ,做成微服务功能 编辑 这个验证码功能…...

【LeetCode热题100】打卡第44天:倒数第30~25题

文章目录 【LeetCode热题100】打卡第44天:倒数第30~25题⛅前言 移动零🔒题目🔑题解 寻找重复数🔒题目🔑题解 二叉树的序列化与反序列化🔒题目🔑题解 最长递增子序列🔒题目&#x1f5…...

C# 匿名方法和Lambda表达式

一.匿名方法 1.匿名方法的演变 匿名方法是为了简化委托的实现,方便调用委托方法而出现的,同时,匿名方法也是学好lambda表达式的基础。在委托调用的方法中,如果方法只被调用一次,这个时候我们就没有必要创建具名方法&…...

uniapp微信小程序scroll-view滚动scrollLeft不准确

今天在实现微信小程序的一个横向导航的时候出现了一个问题,就是每次滑到滚动条最右边的时候 scrollLeft的值都不准确 原因:因为每次滚动监听事件都会被调用比较耗费资源系统会默认节流,可以在scroll-view 加一个 throttle“{{false}}” 关闭…...

symfony/console

github地址:GitHub - symfony/console: Eases the creation of beautiful and testable command line interfaces 文档地址:The Console Component (Symfony 5.4 Docs) 默认命令list,可以用register注册一个command命令,之后可以…...

OSI模型简介及socket,tcp,http三者之间的区别和原理

1.OSI模型简介(七层网络模型) OSI 模型(Open System Interconnection model):一个由国际标准化组织提出的概念模型,试图提供一个使各种不同的计算机和网络在世界范围内实现互联的标准框架。 它将计算机网络体系结构划分为七层,每…...

【leetcode】leetcode69 x的平方根

文章目录 给你一个非负整数 x ,计算并返回 x 的 算术平方根 。原理牛顿法(数值分析中使用到的):二分法 解决方案java 实现实例执行结果 python 实现实例 给你一个非负整数 x ,计算并返回 x 的 算术平方根 。 由于返回类型是整数&…...

springboot与rabbitmq的整合【演示5种基本交换机】

前言: 👏作者简介:我是笑霸final,一名热爱技术的在校学生。 📝个人主页:个人主页1 || 笑霸final的主页2 📕系列专栏:后端专栏 📧如果文章知识点有错误的地方,…...

【设计模式】设计原则-单一职责原则

单一职责原则 类的设计原则之单一职责原则,是最常用的类的设计的原则之一。 百度百科:就一个类而言,应该仅有一个引起它变化的原因。应该只有一个职责。 通俗的讲就是:一个类只做一件事 这个解释更通俗易懂,也更符…...

【C++】-多态的底层原理

💖作者:小树苗渴望变成参天大树🎈 🎉作者宣言:认真写好每一篇博客💤 🎊作者gitee:gitee✨ 💞作者专栏:C语言,数据结构初阶,Linux,C 动态规划算法🎄 如 果 你 …...

一站式歌词提取解决方案:163MusicLyrics自动化歌词获取与处理工具

一站式歌词提取解决方案:163MusicLyrics自动化歌词获取与处理工具 【免费下载链接】163MusicLyrics 云音乐歌词获取处理工具【网易云、QQ音乐】 项目地址: https://gitcode.com/GitHub_Trending/16/163MusicLyrics 163MusicLyrics是一款专业的跨平台歌词提取…...

从TMC2209升级到TMC2240值不值?实测对比静音/能耗/温控三大核心指标

TMC2240 vs TMC2209:实测数据揭示三大升级价值 当3D打印机和自动化设备的噪音开始干扰工作环境,当电机驱动芯片的发热问题频繁触发保护机制,许多工程师都在思考同一个问题:从成熟的TMC2209升级到新一代TMC2240是否值得&#xff1f…...

QueryExcel:5分钟搞定上百个Excel文件的批量查询终极指南

QueryExcel:5分钟搞定上百个Excel文件的批量查询终极指南 【免费下载链接】QueryExcel 多Excel文件内容查询工具。 项目地址: https://gitcode.com/gh_mirrors/qu/QueryExcel 你是否曾面对数十甚至上百个Excel文件,需要从中查找特定信息&#xff…...

SpringBoot项目结构深度解析:为什么你的Controller总报404?这些目录规范必须掌握

SpringBoot项目结构深度解析:为什么你的Controller总报404?这些目录规范必须掌握 在企业级SpringBoot开发中,目录结构看似简单却暗藏玄机。我曾见过团队因为一个包名大小写问题排查三天,也遇到过新人将Controller放在resources目录…...

新手福音:在快马平台上零配置运行第一个yolov11检测程序

今天想和大家分享一个特别适合深度学习新手的体验——在InsCode(快马)平台上零配置运行第一个yolov11目标检测程序。作为计算机视觉的入门项目,目标检测既能带来直观的视觉反馈,又能快速建立成就感,但传统方式的环境配置往往让初学者望而却步…...

突破平台局限:AirPods跨平台体验增强方案全解析

突破平台局限:AirPods跨平台体验增强方案全解析 【免费下载链接】AirPodsDesktop ☄️ AirPods desktop user experience enhancement program, for Windows and Linux (WIP) 项目地址: https://gitcode.com/gh_mirrors/ai/AirPodsDesktop AirPodsDesktop是一…...

3大核心价值+5种应用场景:番茄小说下载器开源工具全解析

3大核心价值5种应用场景:番茄小说下载器开源工具全解析 【免费下载链接】Tomato-Novel-Downloader 番茄小说下载器不精简版 项目地址: https://gitcode.com/gh_mirrors/to/Tomato-Novel-Downloader 番茄小说下载器是一款基于Rust语言开发的开源工具&#xff…...

DS4Windows进阶指南:让PlayStation手柄在PC平台发挥极致性能

DS4Windows进阶指南:让PlayStation手柄在PC平台发挥极致性能 【免费下载链接】DS4Windows Like those other ds4tools, but sexier 项目地址: https://gitcode.com/gh_mirrors/ds/DS4Windows DS4Windows是一款开源工具,专为解决PlayStation手柄在…...

突破安卓截图封锁:Xposed-Disable-FLAG_SECURE技术探秘与实战指南

突破安卓截图封锁:Xposed-Disable-FLAG_SECURE技术探秘与实战指南 【免费下载链接】Xposed-Disable-FLAG_SECURE Xposed Module to Disable FLAG_SECURE, enabling screenshots, screen sharing and recording in apps that normally wouldnt allow it. 项目地址:…...

SCH1633-D01 | 汽车6DoF传感器 |无人机惯性装置

SCH1633-D01 村田Murata 6DoF陀螺仪加速度传感器一体型 汽车用SCH1600传感器系列通过冗余设计选项和内置可调双输出通道为资深客户提供更大的灵活性。300/s的角速率测量范围8g的加速度测量范围冗余数字加速度计通道,动态范围高至26g陀螺仪零偏不稳定性低至0.5/h&am…...