我继承了一个性能非常糟糕的 ASP.NET Web 应用程序(WebForms 网站)。简单地看一下代码,就会发现一本关于如何不编写 .Net 应用程序的百科全书(我说的是到处都是字符串连接、循环内的数据库访问、母版页加载中的文件 I/O 等)。
尽管此应用程序将进行重大改写,但同时我仍需要使其更加健壮,因此我一直在使用 LoadUIWeb 2 进行大量负载测试。我创建了一个非常简单的场景,只需登录并在主页上等待。
我做了一些优化,但我真的不明白负载测试结果的差异。
例如,对于我的简单场景和 10 个虚拟用户,我得到的结果类似于:
最大页面加载 - 12.28s 平均页面加载 - 4.26s 最小页面加载 - 0.43s
用户没有增加,我没有得到很好的曲线。我看到页面加载时间是“随机”的高峰和低谷。同一个页面怎么能在 0.4s 和 12.2s 之间?我希望减少差异(例如总是高或总是中等等)。
我已经完成了大部分显而易见的事情,例如缓存、压缩、无调试模式、无跟踪等。我什至尝试过预编译都无济于事。
我在这里想念什么?