博客 | 首席技术官办公室

客户体验取决于可见性

Lori MacVittie 缩略图
洛里·麦克维蒂
2019 年 11 月 25 日发布

Dimensional Research 对 3000 多名移动应用用户进行的调查证实了我们许多人对当今客户期望的看法。

  • 近一半(49%)的人预计应用程序将在两秒或更短的时间内做出响应
  • 超过一半 (55%) 的人认为应用程序是造成性能问题的原因

这些与性能相关的统计数据可能会令人沮丧,因为作为技术专家,我们知道应用程序只是性能方程的一小部分。

我们知道应用性能是不断提升的。 应用性能的衡量依赖于其下所有层的性能。 从 OSI 的宏观角度来看,它是指除了构成应用的实际代码和数据之外的所有内容。

考虑一下这个“堆栈”的(高度简化的)表示。 每一层都有各自的性能概况和挑战。 即使是物理层也会极大地影响应用的性能。 例如,电缆调制解调器的功率下降可能会导致应用性能下降,因为最终是底层的信号在传输数据。 如果这些信号减弱,则可能需要重新传输数据。 重传意味着传输整个消息需要更长的时间。 这会导致客户体验下降,因为依赖强大、稳定信号的一切都会受到负面影响。

我可以在整个堆栈中重复这种关系。 窗口大小问题、无序的数据包以及过载的 Web 服务器都会影响“应用程序”的整体性能。 如果任何层的性能不佳,则应用的性能也可能不佳。 应用程序性能实际上是其下各层性能的总和。

一直以来,每个应用程序的应用服务都是管理应用程序性能的最佳选择。 使用每个应用程序(专用)应用程序服务意味着可以专门调整这些服务以满足应用的需求。

应用程序性能爱好者知道某些 TCP 设置更适合长寿命的应用程序会话,而其他设置更适合短暂、突发的交易。 网络层的 MTU 等小因素可能会对您为 Xbox 下载 20GB 游戏所需的时间产生重大影响。 

应用性能受到多种因素的影响。 如果组织追求最佳客户体验,则应该针对每个应用进行优化。

这就是为什么我过去多次指出性能(优化和加速)是一种以应用程序为中心的服务。 这越来越意味着应用加速服务(如负载均衡和应用保护)必须与其所服务的应用更加紧密地关联起来。 基于不变性、云原生架构、容器和基础设施即代码概念的新兴部署模型有助于部署和运行每个应用的加速、保护和优化服务及其应用。 这是很重要的事情,因为这些服务有助于确保应用程序(移动或网络)满足客户的性能期望。

但我们不能就此止步。

我们不能忘记,最佳客户体验的提供也依赖于客户环境中的相同堆栈。 设备功能、连接强度和速度以及系统负载都会影响这些变量并降低性能。

这是应用服务需要可见性的原因之一。 从客户环境中收集的信息与应用环境的信息相结合,可以提供有关性能问题根源的宝贵见解。 调整这些环境的能力对于满足或超越客户对其应用体验的期望也至关重要。

可视性仍然是组织保护、扩展和加速应用能力的关键因素。 我们越广泛地分发这些应用程序(跨容器、跨云以及跨客户环境),我们就越需要广泛地分发应用服务,以确保不仅可以确保可见性,而且可以在性能下降时采取行动。