写点什么

使用 AppDynamics 对 Healthcare.gov 进行性能分析

  • 2013-11-25
  • 本文字数:1053 字

    阅读完需:约 3 分钟

奥巴马医改和 healthcare.gov 网站不断涌现出的灾难性问题,以及遭受的抨击,引发了 AppDynamics ——它是一家业界领先的性能监控公司——对此撰写的一篇深度分析的技术文章。在文章中,AppDynamics 描绘了这样一幅图像:在构建网站过程中使用了幼稚可笑的开发计划。

AppDynamics 指出的缺陷涉及了应用服务器端和客户端的性能问题,以及内部 API 之间不一致的协议。

其测试的方式是基于 Firefox ,使用流行的浏览器定制和调试插件 GreaseMonkey ,注入 AppDynamics 的 JavaScript 代理。

通过分析观测到的响应时间指标,“你会发现,在服务器端和客户端,其综合表现都非常糟糕。”

首先从注册页面开始,分析强调了服务器端和客户端之间各自的响应时间。“该页面需要接近 71 秒来载入,其中 59 秒应该归咎于服务器端;而接近 12 秒应该归咎于客户端的数据载入和渲染。”

但分析否认道:“没有访问服务器端以测量响应时间,或是访问所有将服务器端与客户端连接在一起的网段来测量延迟,我们就无法完全确定为何客户端如此缓慢。我们都知道应该进行 JS 和 CSS 优化,但如果服务器端和 / 或网络连接非常缓慢,那么其影响就会呈现在在最终用户的浏览器中。”

下一步,依照网站的工作流测试了是个人档案页面,它在加载结束时呈现为空白页。这是由于某些不正确的 Ajax 请求:“这种糟糕的 Web 应用表现会把最终用户逼疯。尽管看起来页面成功载入了(至少对浏览器来说是这样),但实际上并非如此。”

接下来该文章解释道,Ajax 响应返回了 HTTP 503 状态码(“服务不可用”),意味着 HTTP 服务器能够接到请求,但由于服务器端的一些问题,无法对此做出任何响应。

文章总结的一些建议如下:

  1. 纠正功能整合错误。文章提出了这样的设想:“显然,在没有恰当的监控和测试的情况下, Healthcare.gov 就发布了。而这正是一个导致许多用户交互出现失败、抛出异常,以及保险公司收到不完整数据记录表的主要原因。”
  2. 识别并解决扩展性方面的瓶颈。“需要快速找出软件中的性能瓶颈,并对其进行调优。”

文章指出,“这并不是一个罕见的问题。我们发现许多公司一次又一次重蹈覆辙,他们最终找到我们寻求帮助,以解决其应用性能缺陷。”

在最后,AppDynamics 免费向奥巴马政府提出了一项有助于解决该网站问题的建议:“我们认为美国人民应该享有一套功能合适的、不会浪费他们时间的系统;而且现代化的、服务为导向的应用架构,需要一些针对在这些复杂环境中使用而特别设计的监控工具。有鉴于此,AppDynamics 将随时响应政府需求以提供帮助。”

查看英文原文: Healthcare.gov Performance Analysis by AppDynamics

2013-11-25 07:301938
用户头像

发布了 256 篇内容, 共 87.9 次阅读, 收获喜欢 10 次。

关注

评论

发布
暂无评论
发现更多内容

为啥谷歌的内部工具不适合你?

laofo

DevOps cicd 研发效能 工具链 谷歌

Qt | 关于如何使用事件过滤器 eventFilter

YOLO.

qt 7月月更

2B和2C

白粥

java零基础入门-异常、线程(上)

喵手

Java 7月月更

vue2升级vue3:provide与inject 使用注意事项

zhoulujun

Vue3 provide inject

第二届中国Rust开发者大会来啦,完整议程大曝光!

Mike Tang

rust rust conf

LeetCode-67. 二进制求和(java)

bug菌

Leet Code 7月月更

C#入门系列(三十一) -- 运算符重载

陈言必行

7月月更

依法严厉打击违规自媒体运营者:净化自媒体行业迫在眉睫

石头IT视角

vue2升级vue3:vue3创建全局属性和方法

zhoulujun

Vue3 全局变量 全局方法

vue2升级vue3:Vue Router报错,directly inside <transition> or <keep-a

zhoulujun

Vue3 router JSX tsx

vue2升级vue3:vue3 hooks库选用

zhoulujun

Vue3 Hooks vueuse ahooks

如何使用Docker内的kafka服务

程序员欣宸

Java kafka 7月月更

vue2升级vue3:composition api中监听路由参数改变

zhoulujun

Vue3 路由参数 参数监听 路由跳转

vue2升级vue3:Vue Demij打通vue2与vue3壁垒,构建通用组件

zhoulujun

Vue3 vue2 demij vue2有vue3兼容

C# Serialport的发送和接收

IC00

C# 7月月更

语音聊天app源码——钠斯直播系统源码

开源直播系统源码

直播系统源码 语音聊天系统 语音聊天软件 一对一语音聊天系统

面试突击68:为什么 TCP 需要 3 次握手?

王磊

Java 面试题 网络

栈与Stack类

未见花闻

7月月更

服务器内存故障预测居然可以这样做!

vivo互联网技术

运维 内存监控 EDAC 内存预测

入门前端 -- CSS

bo

CSS 前端 7月月更

vue2升级vue3:单文件组件概述 及 defineExpos/expose

zhoulujun

Vue3 expose

前端食堂技术周刊第 45 期:Vite3.0、第91次TC39会议、Figma背后的CSS、B 站事故复盘、图片优化工具

童欧巴

前端 deno vite TC39 figma

STM32+MFRC522完成IC卡号读取、密码修改、数据读写

DS小龙哥

7月月更

Prometheus 运维工具 Promtool (二)Query 功能

耳东@Erdong

Prometheus 7月月更 Promtool

算法题每日一练---第10天:时间显示

知心宝贝

算法 前端 后端 7月月更

vue2升级vue3: h、createVNode、render、createApp使用

zhoulujun

Vue3

模块二作业

薛敏

Kubernetes网络插件详解 - Calico篇 - 概述

巨子嘉

互联网协议之 IPFS

devpoint

区块链 IPFS Filecoin 7月月更

使用AppDynamics对Healthcare.gov进行性能分析_Java_Vikram Gupta_InfoQ精选文章