Drupal 开发和服务环境的最佳实践

原文:Drupal Development and Server Environment Best Practices

一个新项目在启动初期,往往需要向客户描述一下我们的开发流程。这一过程帮助我们的客户相信,我们的流程能够为项目的短期和长期目标提供有力的保障。这其中自然需要描述我们的环境。幸运的是,有很多 Drupal 为中心的项目主机环境可以参考,我们的团队根据项目需要进行主机选择。这意味着我们几乎同所有的 Drupal 主机平台打过交道,因此我们对各个选项的优劣是比较清楚的。

Git 是基础的基础

第一,最重要的,所有的 Drupal 开发(其他开发也应该是)都应该使用 Git。Git 是一个用于分布式开发、非线性流程的版本控制系统。简单说来,Git 能有效的保护你的代码,防止误操作等人为损失。他还提供了详细的工作历史。Git 具有最佳的性价比

git

利用 Git 进行版本控制,解决开发问题,保障工作成果。

HOME SWEET HOME

在古代 Web 中,通常是站长利用 FTP 工具在 Web 服务器上直接编辑文件。现在我们知道的更多了。开发者首先在“本地环境”中进行开发:软件在本地工作站上模拟的服务器环境上运行。在本地环境中,开发者能够编写排错代码,而无需担心影响到服务器上正在被客户或同事使用的版本。无需多言,这是个很快的开发方式。

develop locally

本地开发很快,容易理解,避免影响服务端。

三个火枪手:开发(DEV)、预发布(STAGE)、生产(LIVE)环境

对于绝大多数项目来说,为开发和发布过程准备三套分离的服务器环境都是必要的。典型的工作方式是:代码上推,内容下拉。

Server Environments

1 - 开发环境

DEV 这里的定义跟我所知的情况不太一致,这里描述的 DEV 环境,我们一般称为集成环境,用于汇总开发人员所提交的所有内容,集成起来进行测试。

开发环境是三套环境中的第一套,所有的工作首先都会发布在开发环境中。这个环境比较随意,所以试验性的代码都可以在上面进行发布。一般来说这个环境是客户无法访问的,用来测试开发工作。这也意味着开发环境的内容经常会被预发布和生产环境的内容所覆盖。

Development

内容处于杂乱状态。 一般在新代码发布后会用线上数据进行覆盖。 用来验证功能能否在服务器上正常运行。

2 - 预发布环境

开发环境中的代码经过验证之后,会被移交到预发布环境(“Stage” 或者 “Test”)中,这一环境会利用生产环境的数据来进行测试,不会影响生产环境。一般来说,出于测试目的,该环境的内容会很接近生产环境。

Stage

内容和文件和线上环境很接近。 常常被线上的数据和文件覆盖。 用来验证应用是否能配合线上环境进行工作。

3 - 生产环境

生产环境也就是线上环境。所有的开发工作,在前两个环境中完成所有测试和审查后,最终会发布到本环境中。从其他环境中的内容很少会覆盖到生产环境。

Live

慎重对待三套环境,保障上线活动的精准。

合而为一

开发过程可谓是诡异莫测 - 因此需要真正的开发流程进行保障。确保项目和开发团队遵循上述原则,能够节省时间、成本,降低项目事故的风险。

Avatar
崔秀龙

简单,是大师的责任;我们凡夫俗子,能做到清楚就很不容易了。

comments powered by Disqus
下一页
上一页

相关