传统与以应用程序为中心的基础架构

应用程序性能监控 (APM) 的性质正在发生变化,主要是因为应用程序开发、应用程序部署和技术基础架构的性质正在发生变化。上周,我与BMC Software讨论了 APM 的未来,并提出了一系列正在改变 APM 的力量,以及组织在监控应用程序性能和未来数字用户体验方面需要关注的内容。

传统与以应用程序为中心的基础架构-南华中天

传统与以应用程序为中心的基础架构

影响应用程序性能监控的第一个力量是应用程序交付架构的不断变化的性质。

传统的应用程序交付架构侧重于通过客户端-服务器软件或通过 Web 服务器、应用程序服务器和数据库层交付应用程序。诸如 ERP 系统之类的遗留应用程序驻留在几个集中式服务器上,应用程序和数据库驻留在同一台服务器上,并且应用程序通过本地数据中心进行使用。用户通过通常(但不总是)驻留在 PC 和笔记本电脑上的设备上的公司批准的软件访问应用程序。

新的应用交付架构有不同的关注点。大多数公司正在转向多源基础架构,其中不同类型的应用程序托管在几个不同的环境中,包括:

  • 传统的本地客户端-服务器或基于 Web 的应用程序
  • 已迁移到私有云、公共云或混合云环境的传统应用程序
  • B2B/B2C 应用程序和微服务在云中运行并由用户提供的设备(BYOD - 包括手机、平板电脑、笔记本电脑、连接的机器)通过 Web 或通过用户请求并安装在自己的设备上的应用程序访问
  • 消耗大量计算资源和网络带宽的大数据应用

软件定义网络 (SDN) 等较新的技术较少关注定义特定的 Internet 协议配置,而更多地关注定义在整个 Internet 中运行应用程序所需的连接。这些技术可以统称为以应用程序为中心的基础设施。

传统与以应用程序为中心的基础架构-南华中天

以应用程序为中心的基础设施配置和显示整个应用程序生态系统,包括为应用程序服务的不同应用程序交付层(Web、应用程序和数据库),以及每个层的存在位置。借助以应用程序为中心的基础架构,管理员可以管理特定应用程序交付的系统,而不是像过去那样管理单个服务器、交换机、路由器和防火墙。与现有的传统架构相比,这种方法提供了许多优势,包括自动负载平衡、按需配置以及扩展网络资源以匹配升级后的应用程序和数据需求的能力。

DevOps 和敏捷推动 APM 变革

DevOps和敏捷软件开发也在推动应用程序性能监控的变化。这两种做法都推动了更快的应用程序开发和部署,虽然对业务有利,但也有其缺点。由于应用程序更改推出得如此之快,因此有时很难看到这些更改对实时生产环境的影响。

应用程序开发人员和所有者传统上负责监控和修复应用程序性能。问题在于,由于开发人员和所有者已成为业务增长的创新者,他们忙于开发,无法处理所有旧的性能监控功能。除了一个例外,应用程序性能监控由组织的 IT 运营团队 (IT Ops) 负责,他们现在需要为该功能寻找新工具。

传统的 IT Ops 监控涉及我喜欢称之为四大应用程序监控的问题:

  1. 关键服务器和应用程序是否可用?很多时候,这是通过 ping 测试来完成的。
  2. 系统上是否存在需要回答的应用程序错误?
  3. 您的所有作业是否都按计划运行,是否有任何关键作业运行时间过长或过短,是否有任何作业在应有的情况下没有运行?
  4. 您的基础架构中是否发生任何硬件错误?

由于时间限制以及需要不断更新遗留软件包、Web 应用程序和微服务,IT Ops 可能很快需要承担应用程序开发人员之前处理的以下额外监控职责:

  • 程序是否正确处理数据,我们是否需要采取措施纠正数据问题?
  • 代码的哪些部分导致问题?
  • 响应时间慢吗?是什么原因造成的(代码、基础设施、电信、服务器等)?

但是,应用程序开发和业务所有者的权限仍然存在一个问题:客户体验和满意度。虽然 IT Ops 已经接管了大多数传统性能监控问题,但应用程序和业务所有者对客户如何与应用程序交互以及客户对使用应用程序的满意度非常感兴趣。客户体验很重要,因为它直接反映了失去的机会、收入和客户。糟糕的客户体验可能会导致违反服务水平协议 (SLA),以及对客户的品牌和声誉造成损害。客户体验是一个关键主题,在大多数组织中,将继续成为 IT 内部和外部业务所有者和应用程序开发的责任。

传统与以应用程序为中心的基础架构-南华中天

这一切如何改变 APM?

如您所见,这两种力量指向使用不同于 IT 传统使用的 APM 工具。如果您遇到其中的一些变化并需要更新您的 APM 工具,您可能希望在新的 APM 工具集中寻找以下一些功能,由 BMC Software 提供:

  • 以应用程序为中心的基础设施监控——能够在一个视图中查看所有应用程序层,然后深入到不同的层并评估每个层的性能。
  • 应用程序组件深入研究——映射您的应用程序拓扑并跟踪后端用户事务以查明问题的根源。
  • 综合事务管理——在特定位置自动测试应用程序脚本以发现特定区域的问题(即,这个应用程序在巴黎而不是旧金山如何工作?)以及监控本地移动应用程序用户体验的能力。
  • 被动最终用户体验监控——使用实时信息识别和跟踪使用趋势,这些信息包含您的应用程序在现实世界中发生的非典型行为。监控给定地理区域中给定应用程序的实际使用趋势,例如用户负载和响应时间。
  • 活跃的最终用户体验——监控和发现最终用户与应用程序和微服务的交互,以确定用户的体验。