DevOps如何从应用程序性能监视APM中受益

DevOps的APM竞争是一件有趣的事,要想获得竞争优势或与竞争者保持优势,您可能需要加大使用新技术和工艺的门槛,但做错了,很技术或工艺可能会导致您破产

这就是我们在一起的地方开发运维在s中后期流行的方法是被许多公司拥护采取了正确的方式,它将帮助您的组织挑战竞争以跟上客户和用户的需求,但是做得不正确,可能会导致更多挑战导致用户体验和产品性能下降为了缓解这些挑战,您的组织需要包括应用程序性能监控APM作为其DevOps实施的一部分

DevOps起点

DevOps运动的开始是一种解决敏捷基础架构想法的方法,在这个时候,组织正在从开发安装在用户桌面上的单片应用程序过渡到面向服务的架构SOA应用程序SOA开始将应用程序细分为更小的片段,以适应这种转变,基础架构必须进行更改并变得更加敏捷以支持SOA应用程序

DevOps将开发和IT运营结合在一起随着SOA让位给微服务应用程序和Web应用程序的日益增长,开发和部署应用程序的传统方法无法正常工作,DevOps的诞生是为了将开发和IT运营团队召集在一起,这些团队在历史上一直彼此矛盾。软件会尽快进行更改以满足业务需求,但运营商希望限制这些更改,以保持他们管理的基础架构更加稳定

DevOps将他们聚在一起,打破了传统的孤岛。理论上,开发和运营合作,将您组织的产品和服务更快,更可靠,更安全地推向市场。

理论也是一件有趣的事从理论上讲,您的DevOps团队将迅速采取行动,打破常规并取名,但是如果部署不适当的步骤,那么在如此快速地部署应用程序时DevOps可能会带来一些与性能相关的挑战

DevOps性能障碍

尽快部署代码将有助于更快地向组织的客户提供功能,但是当该代码降低这些功能的性能时会发生什么错误的DevOps转换会导致某些后果。性能挑战为您的应用

越野车发布

当您尽快重新发布代码时,某些功能可能会从一个版本发布到下一个版本,从而导致性能下降。这可能是开发中的细微之处,导致应用程序的生产速度下降。选择两个所以更快并不总是更好甚至更好

未知生产问题

除非您的开发环境是生产的复制品,否则一旦将应用程序部署到生产用户后,您就无法粗暴地觉醒,通常情况并非如此,有些组织可以支持它,但是其他组织则不能支持由于人的钱或两者兼而有之,您必须对自己拥有的东西做出贡献。当这种情况发生时,一个共同的挑战就会遇到生产中甚至不存在的开发问题

仍然发生生产问题

无论您的软件开发过程多么出色,生产问题仍然会发生。IT基础设施在数十个或数百个实例中将应用程序作为微服务运行意味着必定会出错。两台主机之间的物理连接可能会断开,这与软件无关,但是墨菲定律

为了缓解这些挑战,您需要在DevOps工具链中跟踪应用程序性能,将应用程序性能监控与DevOps工具集成在一起将极大地避免或最小化上述挑战

APM对DevOps的好处

如果将性能监视工具引入DevOps实施中,您将能够确保组织决定实施它的原因不会破坏它们。添加APM可以多种方式使DevOps受益

尽早发现错误

APM工具可以及早发现系统错误在您的DevOps实施中使用APM工具可以帮助捕获那些会变成生产问题的错误。您的DevOps工具可以帮助您捕获那些错误地代表新功能的错误,但是,那些需要调用某些新功能的错误呢?导致短暂的高峰在生产中,随着系统中更多用户的出现,短暂的峰值时间可能会更长。识别确切的代码行导致开发高峰的错误该错误在投入生产之前就可以在开发中修复,这为其他所有人节省了一些潜在的故障排除时间

完全可见

将APM工具集成到DevOps工具集中可提供所需的可见性如今,借助微服务,应用程序在基础架构的各个部分中都具有其组件。分布式跟踪DevOps工具集中的工具提供了所需的可见性,以查看在某些请求时所有应用程序组件中发生的情况慢一点您将能够确定发生这种情况的位置并进行适当的修复,这将有助于提高应用程序在所有组件中的可靠性,并减少尝试查找问题根源所花费的时间成本。此外,借助融合的IPM APM工具,您也可以也将能够确定特定基础设施资源也受到了怎样的影响

提供见解和趋势

APM工具跟踪应用程序性能DevOps的一部分是持续的改进具有适当的APM工具来跟踪生产应用程序的性能,您将能够看到可以进行改进的地方用户要求最高的功能是哪些,而哪些功能的执行速度较慢使用APM工具则具有可以反馈给您的开发人员的数据,以便您可以优先考虑这些功能并适当地计划

APM和DevOps结婚的最佳做法

APM和DevOps结合在一起的好处可以帮助您控制日益复杂的基础架构,但是要获得这些好处,您应该遵循一些最佳实践

  • 选择一种适用于开发和运营的APM工具开发人员经常使用一种工具,而IT运营则使用另一种工具。您想确保开发和运营团队在使用一种APM工具这样他们就可以从相同的来源查看相同的数据
  • 左移测试如果您正在使用一个APM工具,请确保在开发过程中尽早实施该工具。不要等到该应用程序处于您的暂存或预生产环境中才开始收集数据,让开发人员和IT运营商从一开始就看到应用程序的性能。尽早解决,避免他们投入生产
  • 与其他CI CD工具集成不只是在基础架构中添加监视,您需要将APM与现有的DevOps CI CD工具集成在一起,这样,如果需要的话,代码提交可以触发按需收集数据。代码级别性能问题应直接归于开发人员使用的现有工具,例如ChatOps平台
  • 寻找合适的人所有以上这些都是从找到合适的人开始的,就像任何婚姻一样,您需要一个愿意倾听错误并合作解决问题的人,开发人员和IT操作员以孤单的思维可能永远不会接受一起工作。为了组织的更大利益

是结婚类型

为了使您的组织能够击败竞争对手,您需要DevOps来实现其帮助快速适应不断变化的用户需求的目标。将APM与您的DevOps实施相结合可为实现此目标提供许多好处

每个组织都是不同的,但是使用上述最佳实践应该使您入门。召集合适的人员来创建开发和运营团队之间所需的协作。这样,您就可以在基础架构中解决问题并破坏竞争。

有用的资源