DevOps Development和Operations的组合词)是一种重视“软件开发人员(Dev)运维技(Ops)之间沟通合作的文化、运动或惯例。透过自动化“软件交付”和“架构更”的流程,来使得构建、测试、发布软件能够更加地快捷、频繁和可靠。涉及到以下三个概念:
单体结构+瀑布模式
开发模式简单,举例来说就是给项目搭建好服务器开启服务,服务监控也简单,服务出问题直接线上看一下运行日志,不需要专门的运维来做部署,直接按照瀑布模式流程开发。
分布式架构+敏捷开发模式
随着业务体量发展越来越大,单机变多机,业务架构也开始加入了nginx,cdn,缓存等通用基础服务,涉及到多人开发和多人多机器模式。需要专门的运维介入,这时 Ops 的主要职责就是:硬件维护、网络设备维护、DBA 、基础服务维护、数据监控等,运维们擅长写各种部署,监控脚本,减少机械的重复工作,开发模式变成了敏捷开发模式。
3.微服务架构+DEVOPS
微服务是一种软件架构风格,它是以专注于单一责任与功能的小型功能区块 ) 为基础,利用模块化的方式组合出复杂的大型应用程序,各功能区块使用与语言无关的API集相互通信。远程部署机器来管理代码和进行上线工作。
一个软件从零到一,大概包括以下几个阶段:产品规划、开发编码、构建、QA测试、发布、部署和维护。最初DevOps都是指运维一体化,但现在已经扩大到“端对端”的概念了。