在看微软的在线讲座时,专家展示了一个软件,Microsoft Application Center Test,能够测试Web应用程序性能,这一直是我想要的软件,没想到在VS.Net企业版里就有,赶紧装好,测试一下。
原来的一个test.aspx.cs文件里是如下代码
SqlConnection Conn = new SqlConnection(ConfigurationSettings.AppSettings["strConn"]);
SqlDataReader objReader;
SqlCommand objCmd = new SqlCommand(sql,Conn);
try
{
objCmd.Connection.Open();
objReader = objCmd.ExecuteReader();
dg.DataSource = objReader;
dg.DataBind();
}
catch (Exception ex)
{
throw new Exception(ex.Message);
}
finally
{
objCmd.Connection.Close();
}
SqlDataReader objReader;
SqlCommand objCmd = new SqlCommand(sql,Conn);
try
{
objCmd.Connection.Open();
objReader = objCmd.ExecuteReader();
dg.DataSource = objReader;
dg.DataBind();
}
catch (Exception ex)
{
throw new Exception(ex.Message);
}
finally
{
objCmd.Connection.Close();
}
点“操作” - “新建测试”,选择“录制新测试” - “开始录制”,软件弹出一个IE窗口,输入http://localhost/test/test.aspx,回车后返回到ATC窗口,点“停止录制”,保存后运行它,可以看到软件自动模拟用户访问此文件,然后根据此文件的有效负载来打分,这次得分如下
请求总数: | 2,898 | ||
连接总数: | 2,898 | ||
每秒平均请求数: | 193.20 | ||
首字节平均响应时间(毫秒): | 2.29 | ||
末字节平均响应时间(毫秒): | 2.57 | ||
每次迭代末字节平均响应时间(毫秒): | 10.30 | ||
测试中的唯一请求数: | 4 | ||
唯一响应代码数: | 1 |
然后再在test.aspx文件顶部加上
<%@ OutputCache Duration="60" VaryByParam="none" %>
再进行一次测试,得分如下
请求总数: | 3,235 | ||
连接总数: | 3,234 | ||
每秒平均请求数: | 215.67 | ||
首字节平均响应时间(毫秒): | 1.62 | ||
末字节平均响应时间(毫秒): | 1.73 | ||
每次迭代末字节平均响应时间(毫秒): | 6.92 | ||
测试中的唯一请求数: | 4 | ||
唯一响应代码数: | 1 |
呵呵,看样子,缓存对提高应用程序的性能真的有相当大的帮助哦。