940百科知识

首页  文章资讯  杂文乱炖

杂文乱炖

分享一下更好的代码部署方式

2023-03-08 09:14:27杂文乱炖74

开发人员社区内的守门最佳实践对任何人都没有好处。如果有更好的代码部署方式,我们应该分享。为什么?因为开发者社区就是这样:一个社区。一个团队的好处将帮助另一个团队,创建更高效??的流程,减少麻烦,并全面提升软件质量和性能。我们正在见证 DevOps领域协作的增加,这是我们应该鼓励的趋势。

分享一下更好的代码部署方式

什么是守门员?

高级开发人员在他们的职业生涯中吸取了很多教训,并且许多人开发了创新的解决方案来应对开发周期的挑战。过去,他们可能不会公开分享他们的经验和知识;不管是有意还是无意,他们本质上都是在守门。

为什么开发人员应该取消把关?

当守门人发生时,下一代必须花费数年时间来获得理解并制定自己的策略。这是不必要的——经验丰富的开发人员已经掌握了这些知识。分享智慧可以消除试错。当团队中的每个人都知道做事的最佳方法时,整个团队的效率就会更高。他们还可以进一步创新,制定新战略来帮助所有人。

共享部署实践的好处是什么?

企业的竞争优势在于它的软件,而不是它的部署过程。简化的部署有助于打造卓越的软件。这种方法使开发团队能够花时间编写出色的代码并将其投入生产,而无需承受处理 Kubernetes 复杂性和需要额外资源的压力。

随着软件开发过程变得越来越复杂,团队不断创新改进和简化它们的方法,启用这些最佳实践至关重要。多种执行选项创造了无穷无尽的任务组合,当团队在孤岛中工作时,每个人都会制定自己的策略。为什么这是个问题?团队将以不同的创新速度交付软件,这使得预测业务的长期方向变得极其困难。相反,对混乱进行排序可以实现更精确的期望。当每个人都分享他们的秘密时,它会降低复杂性,因为开发人员不会为已经有答案的问题创建新的解决方案。

团队如何分享最佳实践?

开发团队可以标准化部署最佳实践的一种方法是通过持续部署。此过程建立在持续集成和交付 (CI/CD) 的基础上,将代码推送到生产环境并使整个发布过程自动化。持续部署使软件交付变得简单、可靠、可预测和可重复,并消除了大多数代码发布故障排除。

考虑这个例子:对于专注于基本任务(例如将文件传送到服务器)的开发团队来说,自动化 Canary 分析(向迭代受众传送代码)可能看起来很陌生和复杂。这些开发人员可能对进行渐进式发布的前景感到不知所措,但他们不必如此。持续部署消除了手动步骤,因此开发人员和工程师无需学习新的部署技能即可从高效、可靠且错误最小化的发布过程中获益。即使是前精英团队也可以成功地使用持续部署来改进软件创建。经验丰富的团队明白其中的优势,但由于把关,这种做法并未得到广泛应用。作为开发者社区,我们必须分享这些创新。

我们是自己构建工具还是使用现有工具?

许多团队问自己:我们应该构建自己的部署工具吗?虽然自建方法看起来成本效益高,但它会形成狭隘的任务视角和短视的决策。团队专注于基本的清单,而不是提高绩效指标的大局。

是的,发布更新至关重要。但团队还必须着眼于通过提高部署频率、代码更改的提前期、更改失败率和恢复服务的时间来提高未来的生产和价值——同时满足不断增长的用户期望。证据就在布丁中:发布率较高的公司产生的收入增长是发布更新频率较低的公司的 四到五倍。

DIY工具缺乏可扩展性,无法跟上不断增长的流程复杂性、不断扩大的受众和更高的需求。运行自己的解决方案的团队经常发现自己无法为用户创造可持续价值。换句话说,构建和维护工具所花费的时间可以用来提高软件和部署速度。

最后,采用现有的解决方案比构建一个解决方案的工作量要少。已经有人努力创建工具——团队应该抓住机会跳过这些步骤。然后,开发人员和工程师可以将时间花在构建软件等价值驱动的活动上。重新发明轮子不会提供竞争优势。现有的持续部署解决方案可以维护服务和操作,同时自动将代码提交到生产环境,从而最大限度地利用时间和资源。

团队不断创造改进流程和工作流程的方法——但这些解决方案不应该止步于此。为开发人员和工程师节省大量时间和减少挫败感的最佳实践应该传播到整个 DevOps 社区,以便他们可以构建更好的方法。把关抑制创新。通过打开沟通之门创建的卓越解决方案将帮助团队现在并创造更轻松、更高效的未来。