【发布时间】:2010-09-24 07:29:25
【问题描述】:
我很快就爱上了 ASP.NET MVC 测试版,我决定在部署到我的 IIS 6 托管环境时不会牺牲的一件事就是无扩展 URL。因此,我正在权衡添加通配符映射的考虑,但我阅读的所有内容都表明使用此方法时可能会影响性能。但是,我找不到任何实际的基准!
这个问题的第一部分是,你知道我在哪里可以找到这样的基准,还是只是一个未经检验的假设?
问题的第二部分是关于我通过 100Mbs 连接在我们的开发服务器上使用 jMeter 运行的 2 个负载测试。
背景信息
我们的托管服务提供商有一个 4Gbs 的可突发互联网管道和一个用于我们 VLAN 的 1Gbs 骨干网,因此我可以通过办公室局域网生成的任何内容都应该很好地转换为托管环境。
测试场景是加载多个图像/css 文件,因为当请求现在通过 ASP.NET ISAPI 过滤器而通常不会通过它的文件时,假定的性能会受到影响。每个测试包含 50 个线程(模拟用户),每个线程运行 1000 次迭代的请求脚本。每个测试的结果都发布在下面。
测试结果
没有通配符映射:
样品:50,000 平均响应时间:428ms 错误数:0 每秒请求数:110.1 每秒千字节:11,543使用通配符映射:
样品:50,000 平均响应时间:429ms 错误数:0 每秒请求数:109.9 千字节每秒:11,534两个测试都运行正常(一切都在内存中,没有初始负载偏差),从我的角度来看,性能差不多。在两次测试期间,CPU 使用率约为 60%,内存正常,网络使用率稳定在 90-95% 左右。
这是否足以证明通过所有内容的 ASP.NET 过滤器的通配符映射不会真的影响性能,还是我遗漏了什么?
编辑:11 个小时,没有一条评论?我希望更多..大声笑
【问题讨论】:
-
“测试场景是加载几个图像/css文件”。您能在此处提供更多详细信息吗:“几个”?
-
已经有一段时间了,但是 iirc,我有 4-5 个 aspx 页面,其中引用了 2-3 个样式表和大约 20 个图像。我故意在测试页面中没有任何数据库活动,因为我想单独测试 IIS 的瓶颈。
标签: asp.net asp.net-mvc iis-6