devops理念

2023-11-19

一.开发模式

  1. 传统开发模式,也就是瀑布型开发,瀑布模型式是最典型的预见性的方法,严格遵循预先计划的需求、分析、设计、编码、测试的步骤顺序进行。例如需求规格,设计文档,测试计划和代码审阅等等。

 

其中需求分析占比很重,对客户想要的产品进行详细分析,明确指定产品结果。

  • 但是由于需求人员的考虑的方面可能有疏漏。客户的需求的变化。行情的变化等等因素存在。需求文档会不断变更,开发人员产生抵触心理。
  • 开发人员按照需求文档严格开发,限制思维,参与不到需求的设计。
  • 需求与客户沟通存在障碍,可能导致最终产物不是客户想要的。
  • 重新开始项目,很费事费力。

所谓的瀑布,很形象的表达了这一开发模式,就是留下去了,就回不去了。当然程序开发的时候可以重新开始,但是就相当于之前作废,重立项目。

    2.市场在变,科技在变,一切的在不断改变,拥抱变化才能更快的适应环境的变化。因此提出了敏捷式开发。

敏捷开发拥抱变化。敏捷开发就相当于敏捷天赋点满,起点并不是一个完全准确的需求,而是将主干尽快完成,客户认可后,不断的增加新功能,不断改造,不断调优的过程。

 

敏捷开发的还有一个特点就是快,快速迭代。不断快速开发小需求,直到客户满意。

游戏的制作就是一个很好的例子,游戏行业的竞争相当大。在游戏程序差不多的情况下,谁能先占领用户,谁就有优势。

先将核心玩法设计出来,直接上市,让用户去试用体验版,得到用户的反馈,不断优化。这样可以先占据一定的用户,占据一定的市场。

如果按照传统开发,一套文档设计出来,开发,调试几年过去了。市场早就被瓜分了。

敏捷开发,并没有将运维也纳入进来,有可能需求,开发,测试很快做出了很多版本,但是没有部署,或者部署很慢。也拖延产品的进程。这就需要开发,测试,运维的相互沟通。

为了加快这些环节的沟通问题,devops观念产生。

运维的难题&#

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

devops理念 的相关文章

  • 【DevOps视频笔记】6 - 7. Jenkins 介绍 和 安装

    一 Integrate 工具 二 Jenkins 介绍 1 Jenkins 最主要的工作 2 CI CD 可以理解为 2 1 CI 过程 2 2 CD 过程 三 Jenkins 安装 1 安装准备工作 2 安装 Jenkins Stage
  • 如何在 CentOS 中下载包含所有依赖项的 RPM 包

    翻译于ostechnix com 上 Senthil Kumar的 How To Download A RPM Package With All Dependencies In CentOS 我们可以使用curl或wget命令下载任何包 对
  • Azure Devops:即使设置 NPM 身份验证后也无法使用 NPM 私有注册表构建映像

    设置 NPM Authenticate 后 我总是在 npm install 上收到错误 我想在映像构建期间对我的 npm 私有注册表进行身份验证并安装我需要的所有依赖项 也许我误解了这个身份验证过程的工作原理 但这就是我正在做的 建设管道
  • Azure DevOps API 添加公钥

    我希望能够通过 API 添加用于 SSH 访问 Azure DevOps 的公钥 但我似乎无法在 doco 中找到实现此操作的方法 通过 UI 手动执行此操作是不可行的 因为这适用于许多用户和许多项目 谢谢 API 没有记录 但是我们可以使
  • 如何连接到 Vault 服务器

    我想尝试一下vault 所以我配置了VAULT ADDR as echo VAULT ADDR http 127 0 0 1 8200 然后我在开发模式下启动了vault vault server dev 一切正常 我能够连接到服务器 然后
  • docker swarm模式多个服务同一端口

    假设您的拓扑上有两个服务 API 网页界面 两者都假设在端口 80 上运行 在 docker swarm 上 当您创建服务时 如果您想在集群外部访问它 您需要公开并将端口从服务映射到节点 外部端口 但是 如果您将端口 80 映射到 API
  • 如何计算 docker 限制

    我创建了我的码头工人 Python Flask 如何计算内存和 CPU 的限制 我们是否有一些工具可以在具有不同限制的 docker 上运行性能测试 然后建议设置的最佳限制数字是多少 对于已经在容器内运行的应用程序 您可以使用docker
  • 2023 年精选:每个 DevOps 团队都应该了解的 5 种微服务设计模式

    微服务彻底改变了应用程序开发世界 将大型整体系统分解为更小 更易于管理的组件 这种架构风格的特点是独立 松散耦合的服务 带来了从可扩展性 模块化到更高的灵活性等众多优势 DevOps 团队如何最好地利用这种方法来实现最高效率 答案在于理解并
  • 如何在多个虚拟服务器上运行 Jenkins 作业?

    我已经在服务器上安装了 Jenkins 默认情况下该作业将仅在该服务器上运行 我的要求是来自 Jenkins 如何在多个服务器上运行相同的作业 它将如何 ssh 到其他服务器 我是 Jenkins 的新手 请帮忙 基本上我的目标是将应用程序
  • 组名称变量在天蓝色管道中可以是动态的吗?

    我在 azure 上有两个环境 它们之间的区别之一只是来自变量组的环境变量 是否可以为一个管道动态设置组名称 而不是设置两个可以映射自己的组变量的管道 这是我的构建管道的示例 trigger master develop jobs job
  • Azure DevOps 中的构建管道和发布管道有什么区别?

    我已经设置了几个多阶段构建管道Azure DevOps通过使用 yaml文件 我读过有关可用的 发布管道 的信息 我想知道它们有什么好处 他们似乎也在做同样的事情 甚至不提供 YAML 的支持 那么这里的主要区别是什么 使用发布管道而不是通
  • Jenkins - 使用 Git 插件请求登录凭据

    我有几个工作从 bitbucket 中提取代码并在 jenkins 中构建它 我使用 Git 插件来指定存储库 URL git 凭据 尽管我在每个作业配置中设置了凭据 但每次推送到 bitbucket 触发 jenkins 作业 时 Mac
  • f1-micro 中的 GCLOUD Kubernetes 结果为(由于内存不足,不支持 f1-micro 机器的节点池)

    我尝试使用 Google 的 UI 在集群中启动一个新的 f1 micro 节点 但它默默地失败了 所以我决定使用 gcloud 运行它 看看是否提供了更多详细信息 所以我运行了以下命令 gcloud container node pool
  • 在 Chef 中使用属性

    刚刚开始使用chef最近 我发现属性存储在一个名为的大型整体哈希中node可在您的食谱和模板中使用 似乎有多种定义属性的方法 直接在食谱本身中 在属性文件下 例如attributes default rb 在传递给的 JSON 对象中che
  • 在开发与生产版本中自动更改 Vite 代理位置?

    在我正在开发的单页应用程序中 我正在使用 Vite 并在我的vite config ts文件我有以下代理 proxy v1 target https 127 0 0 1 8080 changeOrigin true secure false
  • 将 APK 发布到 Play 商店时出现构建版本问题

    我看过很多答案 但大多数都已经过时了 我正在尝试使用 Azure DevOps 管道将我的 Android 应用程序发布到 Play 商店 我遇到了 APK 版本代码的问题 出现以下错误 APK指定已使用的版本代码 任何人都知道如何增加存在
  • 使用服务名称在 docker-compose React 容器中调用 API 到 django 容器

    我有一个 docker compose 其中包含一个 React 应用程序和其他 django 容器 它们位于同一网络中 因此当我尝试使用服务名称从 React 容器向其中一个 django 服务发出curl 请求时 它可以工作 但在 We
  • 拉取请求的 Bitbucket 构建状态显示失败的构建,而不是最新的构建状态

    我将 Bitbucket 与 Cloudbees 集成 具有以下工作流程 每次用户创建 Pull 请求时 都将其作为目标develop分支 cloudbees 中的多分支管道将聚集拉取请求 例如 PR 34 并将触发第一个构建 1 如果通过
  • 使用 TFS 命令行部署 SSIS 项目

    如何从 TFS 2015 部署 SSIS 项目 对于常规数据库项目来说 sqlpackage exe publish与发布配置文件 将 SSIS 项目模型自动部署到服务器中的命令行参数是什么 我们使用的是 SQL Server 2016 E
  • 无法将 SonarQube 分析结果与 VSTS 集成

    我正在 VSTS 中使用准备 运行和发布分析任务来运行 SonarQube 分析并发布结果以构建摘要 前两个步骤成功执行 但 发布分析 任务失败 因为它无法获取分析 ID 的任务 我收到以下错误消息 无法获取 ID AWE9 wu8 fbf

随机推荐

  • Linux磁盘管理命令大全

    1 cd命令 Linux cd命令用于切换当前工作目录至 dirName 目录参数 其中 dirName 表示法可为绝对路径或相对路径 若目录名称省略 则变换至使用者的 home 目录 也就是刚 login 时所在的目录 另外 也表示为 h
  • RedHat7.2系统中安装snmp工具并配置服务

    简单介绍 snmpwalk是SNMP的一个工具 用户可以通过snmpwalk查看支持SNMP协议设备的一些信息 比如IP地址 内存使用率等 snmpwalk是一款比较好用的采集系统信息的工具 安装snmp工具 输入以下指令安装软件包 以普通
  • 常用的 Druid 参数

    Druid 参数 连接池初始化大小 最大连接数 最小空闲连接数这几个连接数有什么作用 他们的关系是怎么样的 初始连接数如果都被占用了 连接池会创建最小空闲数个连接吗 官网 Druid Database for modern analytic
  • 机器学习技术(八)——朴素贝叶斯算法实操

    机器学习技术 八 朴素贝叶斯算法实操 文章目录 机器学习技术 八 朴素贝叶斯算法实操 一 引言 二 导入相关依赖库 三 读取并查看数据 四 数据预处理 五 构建两种模型进行比较 1 只考虑Dayofweek以及District 2 加入犯罪
  • 高校校园网建设方案【含网络拓扑图+拓扑结构图+配置命令】(详细版)

    xxx大学xxx校区网络整体规划设计方案 目 录 一 项目综述 1 1 1学校概况 1 1 1 1 1 1 2建设目标 1 1 2 1 概述 1 1 2 2 具体目标 1 1 3建设原则 1 1 3 1 概述 1 1 3 2 具体原则 2
  • Ubuntu20.04安装g3log、glog和gflags

    建议最好先安装最新版本的cmake 在进行以下安装 cmake安装教程 1 安装gflags 方法一 首先打开终端 git clone https github com gflags gflags git cd gflags mkdir b
  • C++ Pat甲级1011 World Cup Betting (20 分)

    1011 World Cup Betting 20 分 With the 2010 FIFA World Cup running football fans the world over were becoming increasingly
  • 常见的常微分方程的一般解法

    本文归纳常见的常微分方程的一般解法 如果没有出现意外 本文将不包含解法的推导过程 常微分方程 我们一般可以将其归纳为如下n类 可分离变量的微分方程 一阶 一阶齐次 非齐次 线性微分方程 一阶 包含伯努利 二阶常系数微分方程 二阶 高阶常系数
  • kafka如何保证数据可靠性和数据一致性

    数据可靠性 Kafka 作为一个商业级消息中间件 消息可靠性的重要性可想而知 本文从 Producter 往 Broker 发送消息 Topic 分区副本以及 Leader 选举几个角度介绍数据的可靠性 Producer 往 Broker
  • SIFT和SURF的替换算法——ORB (Oriented FAST and Rotated BRIEF 快速定向和旋转)

    SIFT和SURF的替代算法 ORB Oriented FAST and Rotated BRIEF 快速定向和旋转 1 效果图 2 源码 参考 1 用于关键点检测和描述的SIFT Scale Invariant Feature Trans
  • Faster R-CNN系列之MATLAB篇

    我发现 我是个懒人 不对 我一直是个懒人 但是 电光火石间 不知怎么地 我决定 我写个博客吧 我是废话的分割线 最开始接触Faster R CNN 先尝试跑的其实是PYTHON版 但是编译过程中出错了 我又从来没接触过python 自己稍稍
  • 【INS-30014】无法检查指定的位置是否位于CFS上的解决办法

    安装oracle数据库过程中 出现 INS 30014 无法检查指定的位置是否位于CFS上的解决办法如下 安装过程中 选择 仅安装数据库软件 在安装成功后 使用DBCA工具创建以及配置数据库即可
  • Oracle:数据库设计三大范式

    数据库设计三大范式 为什么要谈及范式 这也是为了数据库设计做准备 对于表设计而言 我们需求何种程度的设计 这完全取决你数据的规模 好比你建房子 要是建个一两层 基本上不需要什么设计 直接开工就行 要是建个这样的房子还找设计公司的话 这无疑是
  • 安装win7后怎么装linux系统,小编教你如何使用u盘安装Linux系统

    第二步 u盘安装Linux 1 U盘插到要安装Linux的电脑上后 启动电脑 在启动时 一直按F2键 就能进入到主板的BIOS控制界面 按左右键移动到boot选项 然后按上下键到removeable device选项 再按 号移动它的位置在
  • flutter城市选择页面

    import dart convert import package test http DioManager dart import package test http api life api dart import package t
  • [分布式] zookeeper集群与kafka集群

    目录 一 Zookeeper 概述 1 1 Zookeeper定义 1 2 Zookeeper 工作机制 1 3 Zookeeper 特点 1 4 Zookeeper 数据结构 1 5 Zookeeper 应用场景 1 6 Zookeepe
  • 小程序跳转小程序

    小程序如何跳转到其他小程序 微信小程序跳转到其他小程序有两种方式 一种是用组件navigator跳转
  • python简单的预测模型_如何使用 Python 或 matlab 实现一个简单根据年份预测年龄的模型...

    Escapist367 110 天前 import torch inputs outputs for year1 in range 1900 2020 for year2 in range 1900 2020 for age1 in ran
  • OD机试题目【计算网络信号】

    网络信号经过传递会逐层衰减 且遇到阻隔物无法直接穿透 在此情况下需要计算某个位置的网络信号值 注意 网络信号可以绕过阻隔物 array m n 的二维数组代表网格地图 array i j 0代表i行j列是空旷位置 array i j x x
  • devops理念

    一 开发模式 传统开发模式 也就是瀑布型开发 瀑布模型式是最典型的预见性的方法 严格遵循预先计划的需求 分析 设计 编码 测试的步骤顺序进行 例如需求规格 设计文档 测试计划和代码审阅等等 其中需求分析占比很重 对客户想要的产品进行详细分析