优化云中应用程序性能的 5 个原则

优化云端应用性能 

速度和敏捷性仍然是企业采用云的主要动机之一,因为在我们生活的这个快节奏的世界里,缓慢已经变得不可接受。 但是,作为一名负责加速应用程序部署、提高应用程序性能和确保安全性的 DevOps 从业者,需要如何实现系统和流程的现代化,以克服云端速度缓慢的问题? 我们有几个建议。

1. 基础设施即代码是你的朋友

99% 的时间里,“手动”一词可能与迟缓和不可预测性同义;大多数人会同意,在追求速度和可靠性时,自动化是一个很好的起点。 无论您是启动额外的云资源来扩展应用程序,还是部署和配置基本应用程序服务,它都应该像执行 API 调用或在控制台上单击一两下一样简单。 利用基础设施即代码(IaC)是成功的关键。 与您的基础设施/NetOps/SecOps 同行合作建立经过验证的定义文件,详细说明部署的内容和方式,这将使您能够以快速、可重复和可靠的方式配置基础设施和服务。

利用这种模板化方法进行自助服务部署最终将减少您对其他团队的依赖,并防止因基于票证的手动基础设施配置请求而导致的部署瓶颈。

2. 充分利用您的 CI/CD 管道

在尝试加速部署时,基础设施即代码提供了朝着正确方向迈出的一步,但通过利用完整的 CI/CD 管道的价值,可以获得更多收益。 除了能够更频繁地集成新的应用代码并自动将这些更新推送到生产中之外,您是否知道还可以将应用服务的插入集成到您的管道中? 通过将这些服务定义为代码(IaC)并将其存储在可以定期监视、更新和验证的源代码控制工具中,您的 CI/CD 工具(如 Ansible 和 GitLab)可以通过 API 调用自动将这些服务拉入部署中。 这样做,您可以确保每个应用程序都具有适当的安全性和合规性控制,而不会延迟部署。

3. 采用容器……但要确保安全

将整个应用所需的代码、库和二进制文件捆绑到一个轻量级包中,并可以跨平台快速一致地部署,这是近期容器采用激增的基础。 这些特性在优化云速度时是一个好兆头——提供动态启动和扩展应用程序的能力,加速 CI/CD 流程,并构建高度动态和可管理的微服务架构。

抛开这些炒作,人们很容易陷入对速度的追求而忘记仍然有应用程序需要与其他应用程序组合相同(或更高)的安全性和应用程序性能优化级别。 不幸的是,当您尝试改造现有的应用服务以满足容器的不同需求时,您可能只会获得有限的成功。 相反,您需要确定一组更动态的服务,与您的容器编排系统集成,以真正支持您的容器,帮助避免不良中断和安全/合规性问题。

4. 知识可见性就是力量

快速启动并运行应用程序是一回事。 让它们保留在那里并供用户使用又是完全不同的挑战。 一旦投入生产,您的应用的健康就会面临无数的潜在威胁 - 网络中断、平台问题、网络攻击和代码错误等等。 这通常使得解决单个应用中断的问题就像大海捞针,但考虑到不同云环境中多个并发应用程序故障的严重程度。 你会从哪里开始呢?

在这种情况下,可见性知识的先决条件,在寻求应用程序问题的解决方案时,它非常有价值。 您对应用堆栈每一层的了解程度越高,您识别操作异常和根本原因的能力就越强。 为此,至关重要的是实施一个与云和应用程序无关的集中式可视性解决方案,以便更快地解决多云架构中的应用程序问题。

5. 团队合作让梦想成真

最后,云敏捷性不仅仅意味着拥有正确的工具和技术(是的,这些肯定有帮助)。 它也与人员和流程有关。 “网络速度取决于最慢的线路”这句话是有一定道理的。 当这句话适用于负责在云中构建、部署和管理应用程序的团队时,这句话是正确的。 这是一个团队努力的结果,通常至少涉及 DevOps、SecOps、NetOps 和架构师,这意味着个人或协作的低效率可能会影响整个团队。

获取 2020 年application服务状况: DevOps 版本

打破孤岛并在团队之间实施定期且强大的参与模式将为帮助加速规划、故障排除和信息共享奠定良好的基础,确保每个人都按照相同的节奏前进。 您不仅能够更好地利用跨职能的专业知识让您的生活更轻松,而且还可以通过倡导其他职业的自动化和流程优化等来回报他们,帮助每个人更快地行动。

相关内容
报告

分布式系统可观测性

O’Reilly 的这份报告概述了监控挑战和权衡,以帮助您为分布式系统选择最佳的可观察性策略。

下载报告 ›

文章

您是否从原生云服务中获得了所需的一切?

有哪些迹象表明您已经不再需要那些云原生安全和应用性能服务?

阅读文章 ›

解决方案

选择速度,避免烫伤

了解如何在不减慢开发速度的情况下获得业务所需的安全性、性能和可视性。

了解更多 >

网络研讨会

跨团队合作,让代码更快到达客户手中

为了提高速度,应用程序开发的责任已经从网络和安全转移到开发人员身上。

观看网络研讨会 ›