在编写ASP.NET应用程序的时候,你会花费多长的时间来考虑性能的问题?很不幸,大多数开发者都对性能问题感到很后悔。性能的规划和设计真的需要放在前面和中心位置。你需要考虑自己的目标,并且确保把良好的性能作为目标之一;接着你需要评估自己的程序,评估的方面越多,改善性能的机会就越大。
在本文中我将解释微软Visual Studio企业版中包含的一个重要工具:微软Application Center Test。严肃的Web开发者都应该把这个工具放在自己的工具包中。
Application Center Test
在离开微软之前,我参加了12个城市的ASP.NET说明会。其中一个覆盖了性能问题,并且给很多开发者介绍了微软Application Center Test。这个工具总是生成大量的有趣的信息,我对它有很多疑问。
你会发现Application Center Test是Application Center(可以在旧的MSDN CD或DVD中找到)的一部分,或者安装在Visual Studio .NET企业版的Visual Studio .NET 2003\Visual Studio .NET Enterprise Features目录下面。当你第一次打开Application Center Test的时候,你可以看到一个用于导航可用的测试、结果和用户的树视图。首先,我希望显示出很容易建立测试。
使用Application Center Test
首先,建立一个简单的Web应用程序。例如,我将使用图1所示的页面(请注意,我使用了一些联机编写ASP.NET页面的小技巧,你不需要编写完整的Page_Load事件声明)。
示例Web应用程序
<%@ Page Language="C#" %>
<%@ Import Namespace="System.Data " %>
<%@ Import Namespace="System.Data.SqlClient" %>
<%@ Import Namespace=" System.Configuration" %>
<script runat="server">
public void Page_Load() {
using(SqlConnection connection =
new SqlConnection(ConfigurationSettings.AppSettings["Northwind"]))
{
SqlCommand command = new SqlCommand("SELECT * FROM Products", connection);
connection.Open();
DataGrid1.DataSource = command.ExecuteReader();
DataGrid1.DataBind();
}
}
</script>
<form runat="server">
<asp:DataGrid id="DataGrid1" runat="server" />
</form>
上面的代码虽然不是推荐的用于构造应用程序的方法,但是它也足够简单,我们能够在它上面执行一些基本的测试。在Web浏览器中打开这个页面会返回一个填充了的数据表格,它显示为HTML表格。
现在你知道这个页面可以工作了,把链接复制到剪贴板上,你还需要使用它的。在我的计算机上这个例子的链接是http://localhost/blackbelt/outputcache/test.aspx。
下一步,导航到Application Center Test,右键点击"Tests(测试)"并选择"New Test(新建测试)"。它会打开"新建测试向导"欢迎页面。点击"下一步"选择新测试的源代码,并选中"记录新测试"。再次点击"下一步"以选择测试类型,提示选择脚本语言(我们不修改默认值)的时候,点击"下一步",出现了图1所示的界面:
图1:新建测试向导
"记录测试"使Application Center Test易于使用。点击"开始记录"会打开一个新的浏览器实例。不要在地址栏中输入URL(应该为about:blank)。我们的操作是,在这个新的浏览器实例中选择Tools | Internet选择,并浏览"连接"属性页。接着点击"局域网设置"按钮,会看到图2所示的界面:
图2:连接设置
你会发现代理服务器(proxy)设置信息被填充了,并且与正常值不同。这是因为Application Center Test打开了一个新的浏览器实例并指示它使用Applica