coldfusion – 代码/ Web应用程序部署的最佳实践?

我很想听听如何最好地将代码从开发服务器移动到生产服务器的想法.

一个陷阱列表,不做这个列表会有所帮助.

任何有助于自动化步骤的工具.

>根据这些文件列表,对现有代码进行备份
>记录从开发到生产的这些文件的部署
>如果部署或应用程序以任何方式失败,则允许更轻松地回滚…

我从未在一家拥有部署过程的公司工作,除了从开发到生产的非常手动的ftp文件.

你在公司,部门等方面做了什么?

谢谢…

是的,我是一名冷冻程序员,但文件文件,这应该是语言无关的问题.

解决方法

好的,我会咬人的.这个问题的技术方面,其他答案已经涵盖了.但真正的问题是流程问题.真正关注的焦点应该是确保有意义的 software development life cycle(SDLC) – 规划,开发,验证和部署.我将依次报道每一个.你想要的是每个阶段的可重复活动.

规划

阐明并记录要交付的内容.通常门票或用户故事就足够了.有时你会做更多的事情,比如书面要求文件,客户签字,这被翻译成各种工件,如written use cases – 最终你想要的是在电子系统中记录的东西,你可以将变化与代码相关联.这导致我……

发展

还记得电子系统吗?好.现在,当你对代码进行更改时(你正在提交源代码控制权吗?),你将这些更改与此电子系统中的某些内容相关联 – 通常是门票.我喜欢Trac,但也听说过有关Atlassian’s suite的好东西.这为您提供了可追溯性.所以你可以断言已经做了什么以及如何做.然后你可以使用这个系统和源代码控制来创建一个构建 – 所有改变所需的位 – 以及在源代码控制中构建的标记 – 这是你所改变的列表.更好的是,让构建包含所有内容,以便它是可以轻松部署在其自身上的独立实体.然后交付构建…

验证

也许许多商店忽视了最重要的一步 – 冒着自己的危险.生产过程中发现的缺陷在修复过程中会成倍地增加,然后才会在过程中发现它们.验证通常是许多商店中发生这种情况的唯一步骤 – 因此请确保您的确实如此.

这不应该由程序员完成!那就像看着鸡舍的狐狸一样.无论谁做的都应该遵循某种计划.我们使用Test Link.这意味着每个构建都以相同的方式验证,因此您可以识别回归错误.并且,此构建应以与生产相同的方式部署.

如果一切顺利(我们通常需要至少3个版本),则验证构建.这就是……

部署

这应该是非事件,因为您按照与测试相同的步骤进行验证的构建.可能首先它会访问一个临时服务器,其中有一个自动复制过程,但重点是这不应该是一个问题,因为您使用相同的过程进行了验证.

结论

在了解什么在哪里,您真正想要的是将变更组合在一起的合理方式.这就是构建的概念所在.它实际上是应该在SDLC中的步骤之间进行区分的单元.如果你已经拥有它,那么理解给定系统状态的能力变得微不足道.

相关文章

vue阻止冒泡事件 阻止点击事件的执行 <div @click=&a...
尝试过使用网友说的API接口获取 找到的都是失效了 暂时就使用...
后台我拿的数据是这样的格式: [ {id:1 , parentId: 0, name:...
JAVA下载文件防重复点击,防止多次下载请求,Cookie方式快速简...
Mip是什么意思以及作用有哪些