define as,it项目开发流程 plan define

【define as,it项目开发流程 plan define】简介如今,软件通常作为服务交付,这被称为网络应用,或软件即服务(SaaS) 。12-Factor为构建SaaS应用程序提供了如下方法:
自动配置采用标准化流程,让新开发人员以最少的学习成本加入这个项目 。并在每个系统中提供划清界限 。适用于现代最大的可移植性,的部署,从而节省服务器和系统管理资源 。将开发开发环境和生产环境的云计算平台,并使用差异降至最低.持续交付实现敏捷开发,无需在工具、架构和开发流程上进行明显的改变 。这一理论适用于以任何语言开发的应用程序和后端服务(数据库、消息队列、缓存等) 。).
背景本文投稿人参与了数百个应用的开发部署,通过Heroku平台间接见证了数十万个应用的开发、运营和扩展过程 。
本文综合了我们几乎所有关于SaaS应用的经验和智慧,是开发此类应用的理想实践标准,并特别关注如何保持应用的健康发展,如何与开发者有效合作,如何避免软件污染 。
我们的初衷是分享一些现代软件开发过程中发现的系统性问题,加深对这些问题的理解 。我们提供了讨论这些问题所需的共享词汇,并使用相关术语给出了这些问题的一组通用解决方案 。本文的格式受马丁福勒的书《企业应用程序架构的模式:重构》的启发 。
读者应该是哪些人?任何SaaS应用的开发者 。部署和管理此类应用程序的运营工程师 。
I. 基准代码 一份基准代码(Codebase),多份部署(deploy) 12-Factor应用程序(译者注:使用此概念设计的应用程序,下同)通常由版本控制系统管理,如Git、Mercurial、Subversion 。用于跟踪所有代码修订的数据库称为代码报告(CodeRepo) 。
在像SVN这样的集中式版本控制系统中,参考代码指的是控制系统中的这个代码库;在像Git这样的分布式版本控制系统中,基准代码指的是最上游的代码库 。

define as,it项目开发流程 plan define

文章插图
一个代码库对应多个部署
基准代码和应用程序之间总是一一对应的:
一旦有多个参考代码,它就不能被称为应用程序,而是分布式系统 。分布式系统中的每个组件都是一个应用程序,每个应用程序都可以用12-Factor开发 。多个应用程序共享一个基准代码违反了12因素原则 。解决方案是将共享代码拆分成独立的类库,然后使用依赖管理策略加载它们 。虽然每个应用程序只对应一个基准代码,但多个部署可以同时存在 。每个部署相当于运行一个应用程序实例 。穿过
常会有一个生产环境,一个或多个预发布环境 。此外,每个开发人员都会在自己本地环境运行一个应用实例,这些都相当于一份部署 。
所有部署的基准代码相同,但每份部署可以使用其不同的版本 。比如,开发人员可能有一些提交还没有同步至预发布环境;预发布环境也有一些提交没有同步至生产环境 。但它们都共享一份基准代码,我们就认为它们只是相同应用的不同部署而已 。