首页 测试 体会 查看内容

成功进行微软Silverlight应用程序负载测试的三项建议

2014-9-19 20:04| 发布者: | 查看: 337| 评论: 0

摘要:   建议2:自动处理应用程序标识符   Silverlight应用程序使用标识符做内部处理。有些标识符是特定用于某个应用程序的,其他的则通用于所有Silverlight应用程序。这些标识符被当作请求的参数,并在响应中使用,两 ...

  建议2:自动处理应用程序标识符

  Silverlight应用程序使用标识符做内部处理。有些标识符是特定用于某个应用程序的,其他的则通用于所有Silverlight应用程序。这些标识符被当作请求的参数,并在响应中使用,两者协同工作。例如,服务器响应某个请求并返回一个标识符,这个标识符会被作为后续请求的标识符发送。

  每次客户端和服务端通信时,这些标识符会发生变化。按照原来的方式再现已记录的会话会因为错误的标识符值而导致错误产生。你必须在运行时为这些参数提取和重新注入恰当的值。因为标识符可以在很多请求中使用,手动处理它们意味着巨大的工作量。

  为了避免痛苦地手动配置这些参数,需要确保你的负载测试工具能够自动检测和处理和所有Silverlight应用程序相关的标识符,并提供相关功能让你能够声明自定义的相关性规则,以自动处理自定义标识符。

  建议3:监测服务端

  如果你的测试正在运行,而应用程序响应缓慢或者抛出异常,其根本原因会是什么呢?在进行负载测试时监测服务器能帮助你在服务器架构上找到这些问题的原因。

  下面的例子是一个典型的性能计数器。该计数器用于监测某个典型微软应用程序的每个组件:

  ● Windows: Processor\% Processor Time, Memory\Available MBytes, System\Processor Queue Length, PhysicalDisk\% Idle Time, Network Interface\Output Queue Length…

  ● IIS: HTTP Service Request Queues\RejectionRate, Web Service Cache\File Cache Hits %, HTTP Service Url Groups\CurrentConnections…

  ● ASP.Net: ASP.NET\Requests Queued, ASP.NET\Requests Rejected, .NET CLR Exceptions\#Exceps Thrown / sec, .NET CLR Data\ SqlClient: Current # pooled connections…

  ● SQLServer: General Statistics\Logins/sec, SQL Statistics\ SQL Compilations/sec, Locks\Number of Deadlocks/sec…

  我们需要什么样的计数器?什么样的值是糟糕的?除非你是一个系统专家,否则,你需要使用工具来自动选择合适的计数器,并根据预设的临界值设置警告。理想情况下,该工具不应只是能够根据行业标准设置计数器和临界值,而同时应该能够根据你的特定要求提供自定义设置。

  结果相关性对有效结果分析很重要。利用该功能,对基础架构性能计数器提供的应用程序响应次数和错误数据进行相关性分析,你可以确定导致性能问题的原因。例如,如果你看到池容量占用率达到100%的警告,而同时发现响应次数陡增,你就找到了响应时间问题的根源:池的容量大小还是默认设置的值,并没有发生改变,所以应该上调容量限制。使用相同的工具分析你用于产生性能测试的监测数据,能保证在寻找性能问题的根源时更快速地找到相关性事件,最终提高工作效率。

  随着越来越多的公司在因特网上发布关键型应用程序,在正式上线之前对这些web应用程序在不同负载下的性能测试已经变得愈发重要。因为Silverlight提供了扩展的能力,以帮助开发支持企业组织需求、功能强大的新型应用程序,该技术不同于其它技术,所以需要有新的负载测试方法。想要搞清楚的你应用程序在Silverlight生产环境中如何能够正常运行,以及如何优化它们以提高性能,你不能只是模拟单个用户的活动,还要能够模拟多个用户同时进行的活动。通过遵循本文中的建议,企业组织能够快速调整他们的测试方法论以应对Silverlight应用程序,比以前更加容易和快速地进入市场,提高生产力并节约成本。


鲜花

握手

雷人

路过

鸡蛋

扫一扫关注最新动态

毒镜头:老镜头、摄影器材资料库、老镜头样片、摄影
爱评测 aipingce.com  
返回顶部