写点什么

使用 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:301889
用户头像

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

关注

评论

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

区块链溯源有哪些优势?区块链产品溯源系统搭建

13530558032

浅谈原子操作

阿里云基础软件团队

内核

Java开发利器之重试器

Java老k

Java

Linux笔记(二): vim 基本操作

Leo

Linux 学习 大前端

很简单却能让你面试头疼得Java容器,这里从源码给你解释清楚

小Q

Java 学习 源码 容器 面试

区块链赋能保险理赔,宁波开启“零感知理赔”试点

CECBC

区块链 保险理赔

用FL Studio基础版制作一首完整的电音

奈奈的杂社

音乐制作 编曲 电音 电音制作 中国电音

Windows环境下如何进行线程Dump分析

Java老k

Java dump

【2020GET】即构科技蒋宁波:教育行业客户需求的核心是什么?

ZEGO即构

实体经济的数智化要塞,为什么是供应链?

脑极体

架构师训练营第十周作业

我是谁

极客大学架构师训练营

使用sonar扫描svn中的代码后,没有作者或责任人信息

lee

svn 代码质量 sonar

K8S CSI容器存储接口(一):介绍以及原理

silenceper

Kubernetes CSI

连企业业务模式都搞不清楚,何谈研发体系建设?

菜根老谭

研发体系

全球至少有36家央行发布了央行数字货币计划

CECBC

数字货币

性能优化:线程资源回收

AI乔治

Java 架构 JVM 性能调优

谁说产品经理和程序员之间不能和平共处?

华为云开发者联盟

DevOps 产品经理 用户地图

极客大学 - 架构师训练营 第十周总结

9527

K8S CSI 容器存储接口 (二):如何编写一个CSI插件

silenceper

Kubernetes Kubernetes源码 CSI

区块链版权应用开发,区块链助力版权保护

13530558032

淘宝APP高并发架构设计pdf已开源:从架构分层到实战维护,挑战全网

Java~~~

Java 编程语言 高并发 淘宝 高并发系统设计

Java8 Stream:2万字20个实例,玩转集合的筛选、归约、分组、聚合

比伯

Java 架构 面试 编程语言 计算机

Linux笔记(一):基本命令

Leo

Linux 大前端 笔记

当艺术品遇上区块链:金丝楠木艺术品溯源

CECBC

区块链 溯源 艺术品

原理实践,全面讲解Logstash+Kibana+kafka

996小迁

Java 程序员 架构 面试

服务器选择要注意什么?

德胜网络-阳

BitArray虽好,但请不要滥用,一次线上内存暴增排查

AI乔治

Java 架构 JVM 内存泄露

LeetCode题解:17. 电话号码的字母组合,回溯,JavaScript,详细注释

Lee Chen

算法 大前端 LeetCode

架构师训练营 -week10-作业

大刘

极客大学架构师训练营

一口气看完45个寄存器,CPU核心技术大揭秘

程序员架构进阶

cpu 操作系统 寄存器 核心

一文搞懂所有HashMap面试题

编程 面试 计算机

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