Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1228794
  • 博文数量: 699
  • 博客积分: 6000
  • 博客等级: 准将
  • 技术积分: 4970
  • 用 户 组: 普通用户
  • 注册时间: 2008-10-15 13:45
文章分类

全部博文(699)

文章存档

2011年(1)

2008年(698)

我的朋友

分类:

2008-10-15 13:47:05

    首先,这里有两个web应用程序性能方面的重要指标。请注意,下面的“定义”并不规范,仅供参考。

    * Response Time - 响应时间

    从初始化请求到完成响应所用的时间。这是一个WEB应用程序速度的重要度量。

    * Scalability - 伸缩性

    一个可伸缩的应用程序的响应时间随负载的增加而线性增加。

    没有WEB应用程序可以处理无限数目的请求,但是一般我们可以预测一个范围,并保证我们的WEB应用程序可以在此范围内“优雅”的伸缩,即始终把响应时间维持在可接受的级别。

    如果我们打算优化我们的WEB应用程序,那么至少我们应该知道它到底该不该优化。压力可以解答这个问题。

    * Load Test - 压力测试

    为WEB应用程序模拟用户请求以测量其伸缩性的过程。

    它非常有用,虽然开始的时候会觉得有点“变态”。一般我们会模拟大量的用户请求以获得在WEB应用程序的速度恶化到无法接受的级别前能够处理的并发请求数量。

    所谓“无法接受的级别”并不是一定要到实例池崩溃、应用瘫痪甚至当机的时候,这要视需求而定。

    一般压力测试包含如下步骤:

    * 确定接受请求并完成响应的最大允许的延时。

    * 估计WEB应用程序的最大并发用户数量。

    * 模拟用户请求,以一个比较小的负载开始,逐渐增加模拟用户的数量,

    直到WEB应用程序的 相应延时超过最大延时。

    * 如果负载比估计的用户数量小,那么应该优化这个WEB程序,否则你选择性的执行优化。

    你不会在考虑自己写一个测试程序吧?算了,何必再重新发明一次轮子?这里有一些压力测试工具,它们各有特色,先介绍免费的:

    * Web Application Stress Tool, Microsoft,

    * JMeter, Apache Project

    * AutoRunner

【责编:Chuan】

--------------------next---------------------

阅读(277) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~