- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验目的。
了解WAS(Microsoft的Web Application Stress Tool)服务器负载测试软件。
理解web压力测试概念。
熟练运用WAS软件进行web压力测试。
实验内容。
通过WAS软件使200个用户对一个网站或网页进行压力测试。
实验过程。
建立新脚本。
启动WAS软件后点击[new script]按钮。
编辑脚本内容。
在选择脚本名称的右侧会出现相应的设置?[server]中输入要进行测试的服务器IP地址或计算机名称;
[verb]中选择脚本运行方式 get、post、head; [path]中输入向服务器提交的文件或字符串。2、在settings的功能设置中,需要设置多少轰炸的线程数,本次实验需要对200个用户进行压力测试,故而在“Stress Level”中填写100,在Stress Multiplier中填写2,基本公式为:用户数(线程数)= Stress Level * Stress Multiplier。Stress?Level和Stress?multiplier这二个项决定了访问服务器的并发连接的数量。Microsoft建议不要选择超过100的Stress?Level值。如果要模拟的并发连接数量超过100个,可以调整Stress?multiplier或使用多个客户机。在负载测试期间WAS将通过DCOM与其他客户机协调。
在“Test Run Time”中来指定一次压力测试需要持续的时间,分为天、小时、分、秒几个单位级别。
创建新用户。1.在左边窗口展开脚本的信息 2.点Users 节点在右边窗口打开相应的视图 3.双击Default 用户组打开用户视图。 注意默认已经创建了200个用户。你可以简单地修改用户名和密码就行了。
检查一下报表的Result Codes部分。这部分内容包含了请求结果代码、说明以及服务器返回的结果代码的数量。如果这里出现了404代码(页面没有找到),说明在脚本有错误的页面请求。
页面摘要部分提供了页面的名字,接收到第一个字节的平均时间(TTFB),接收到最后一个字节的平均时间这两个值对于计算客户端所看到的服务器性能具有重要意义。TTFB反映了从发出页面请求到接收到应答数据第一个字节的时间总和(以 毫秒计),TTLB包含了TTFB,它是客户机接收到页面最后一个字节所需要的累计时间。 报表中还包含了所有性能计数器的信息。这些数据显示了运行时各个项目的测量值,同时还提供了最大值、最小值、平均值等。报表实际提供的信息远远超过了我们这里能够介绍的内容。为了给你一个有关表所提供信息种类的印象,图6摘录了一个报表实例。
点击工具栏中的小三角,运行程序,进行测试。
性能优化。
在网站中,我们总会考虑这么几个问题:1. 优化ASP代码。2. 优化数据库调用。3. 使用存储过程。4. 调整服务器性能。
优秀的网站设计都会关注这些问题。然而,与静态页面的速度相比,任何数据库调用都会显著地影响Web网站的响应速度,这主要是因为在发送页面之前必须单独地为每个访问网站的用户进行数据库调用。
这里提出的性能优化方案正是基于以下事实:访问静态HTML页面要比访问那些内容依赖于数据库调用的页面要快。它的基本思想是:在用户访问页面之前,预 先从数据库提取信息写入存储在服务器上的静态HTML页面。为了保证这些静态页面能够及时地反映不断变化的数据库数据,必须有一个调度程序管理静态页面的 生成。
当然,这种方案并不能够适应所有的情形。例如,如果是从持续变化的大容量数据库提取少量信息,这种方案是不合适的。不过可以适用该方案的场合还是很多。为了保证能够在合适的时间更新静态HTML页面,把下面的代码加入到相应的ASP页面。
每当该页面被调用,脚本就会提取最后的更新时间并将它与当前时间比较。如果两个时间之间的差值大于预定的数值,Update.asp脚本就会运行;否则,该ASP页面把余下的HTML代码发送给浏览器。
最后更新时间从Application变量得到,它的第一次初始化由global.asa完成。具体的更新时间间隔应根据页面内容的更新要求调整。 如果每次访问ASP页面的时候都要提供最新的信息,或者输出与用户输入密切相关,这种方法并不实用,但这种方法可以适应以固定的时间间隔更新信息的场合。
如果数据库内容由客户通过适当的ASP页面更新,要确保静态页面也能够自动反映数据的变化,我们可以在ASP页面中调用Update脚本。这样,每当数据库内容改变时服务器上也有了最新的静态HTML页面。
万一用户访问页面的时候正好在执行更新,我们可以利用锁或者其他类似的机制把页面延迟几秒钟。 HtmlMain.asp(纯HTML加调度ASP代码)和main.asp
文档评论(0)