关于构建高性能ASP.NET网站的优化措施研究

2012-09-15 01:15:10刘小强
铜陵职业技术学院学报 2012年2期
关键词:三门峡服务端小强

刘小强

(三门峡职业技术学院,河南 三门峡 472000)

关于构建高性能ASP.NET网站的优化措施研究

刘小强

(三门峡职业技术学院,河南 三门峡 472000)

从ASP.NET网站的项目编译方式、站点发布方式、回传方式、声明站点的默认页面以及永久跳转等五个方面进行了研究和探讨,并针对这五个方面提出了提高ASP.NET网站性能的解决方案,从而简便快捷的实现了ASP.NET网站的高性能优化。

ASP.NET;性能;优化

随着互联网技术的飞速发展,用户对网站的性能要求越来越高。如何更好地利用所占有的资源来提高应用程序本身的性能,已成为开发人员考虑的一个关键问题。ASP.NET网站如果没有良好的性能即便功能全面也无法满足和发挥其应有的作用和价值。无论ASP.NET网站的页面多美精美,功能多么强大,服务多么优良,如果网站的性能无法让用户接受,所有的工作都没有意义[1],因此ASP.NET网站的性能是至关重要的。

虽然硬件价格越来越低,升级硬件成为提高系统性能最方便、直接的途径,但是在当前这种系统越来越庞大,客户需要也不断提升的情况下,仅仅依靠频繁升级硬件是无法获得满意的效果的[3]。所以在现有的网络资源的环境下,通过对ASP.NET网站进行优化来提高网络的性能成为了解决问题的又一途径。

1.ASP.NET性能优化技术

ASP.NET网站的性能高低是衡量网站价值的重要指标,而网站的性能优化工作是多方面的又是长期的。本文从以下五个方面进行了研究和探讨,并针对这五个方面提出了解决方案,从而简便、快捷的实现了ASP.NET网站的高性能优化。

1.1 优化项目编译方式

如果项目是用Project的方式建立的,ASP.NET站点包含在一个Solution解决方案中,那么在发布之前,编译项目的时候,采用release方式,这种方式会减少CPU的使用率[2]。因为采用debug的方式发布,编译器会编译后的代码中加入很多的信息,如调试信息等。具体优化操作步骤如下:

(1)在VS中,选择“Build|Configuration Manager”,如图1所示:

(2)在“Active Solution Configuration”下拉框选择“Release”,然后点击关闭按钮关闭对话框。那么Solution就以Release方式编译。使得Solution编译为Release的方法很多,例如在Solution上面右击“属性”,然后去设置也是可以的。

图1 Configuration Manager设置

(3)解决方案Solution设置为Release方式后,ASP.NET站点程序的config文件仍为deubg方式,那么在发布站点的时候,需要手动的去修改为release。如果Solution是以debug方式编译,即使web.config设置了release,最后发布的站点的代码还是debug方式的。

1.2 优化站点发布方式

根据上文所述优化项目编译方式后,仍需要进一步设置优化ASP.NET站点程序的config文件,发布站点的时候,需要手动的去修改为release。因此站点发布方式也需要进一步优化,具体发布优化的步骤如下:

(1)修改web.config配置;

(2)在站点上面右键选择”Publish”,如图2所示:

图2 Publish设置

1.3减少不必要的回传

从服务端到客户端的回传每次都是需要花费一定的时间,而且加长了用户等待的时间。所以应该尽可能减少不必要的回传。解决办法如下:

如果需要在服务端把用户定向到另外的一个页面,尽量使用Server.Transfer,而不是使用Response.Redirect。因为当使用Response.Redirect的时候,服务端会向客户端的浏览器发送一个响应:告诉浏览器去加载转向的那个页面。然后浏览器再次发送请求到服务端去请求另外的那个页面。当使用Server. Transfer的时候,服务端就立刻执行跳转[3]。这样做的一个不好的地方可能就是:此时请求的是A.aspx,其实服务端已经跳转到了B.aspx页面,但是浏览器上面的Url还是显示的A.aspx。

当使用Server.Transfer需要注意:确定每次访问A页面都需要跳转到B页面的时候,就是用Server.Transfer。例如,当用户在没有登录的时候想对正在阅读的一篇文章评论,那么此时,页面就会跳转到Login的登陆页面,登陆之后,页面就跳转到之前看文章的那个页面,然后写评论。此时的这个跳转就不适合用Server.Transfer,而采用Response.Redirect。如果不管用户在哪里,只要用户登陆,那么总是跳到一个固定的页面,那么就可以使用Server.Transfer。

矩阵Rbe反映了足端坐标系到机身坐标系的旋转关系,三维矢量Pbe反映了足端在机身坐标系中与质心的位置关系,两者共同体现了机器人足端的位姿。

1.4 声明站点的默认页面

当用户请求一个站点的时候,如http://domain/folder,IIS会自动进行一些重定向到http://domain/folder/。同时,http.sys也不会把没有声明默认页面的站点的默认首页加入到内核的缓存中,例如,如果在程序中,我们设置站点的默认页面时Default.aspx,但是在部署到IIS的时候,没有配置Default.aspx就是站点的默认页面,那么这个页面的内容不会被http.sys缓存到内核中[4]。所以为了避免IIS重定向和允许http.sys缓存页面,我们在IIS中要配置站点的默认页面。

1.5 永久跳转相关话题

如果站点的某个页面过期了或者不再用了,那么就可以采用301永久跳转。当服务端向客户端发出301响应的时候,浏览器和代理都会去更新他们的缓存(如果之前的旧页面采用了缓存),而且搜索引擎也会采用新的页面[5]。要让服务端向客户端发送301响应,需要进行IIS配置,其中IIS目前比较流行的版本有IIS5.1、IIS6、IIS7等,现对IIS6和IIS7的配置进行说明如下:

(1) IIS 6配置

1)在IIS中站点中,选中你想跳转的文件或者目录。

2)选中“A redirection to a URL”。

3)然后输入你想跳转到的页面。

4)然后选中“The exact url entered above”和“A permanent redirect for this resource”。

(2) IIS 7配置

在Server 2008上面进行如下配置:

1)打开”开始”->”管理工具”->”服务器管理”,如图3所示:

2)在IIS上面添加”角色服务”,如图4所示:

3)在“常见Http功能”下面选中“Http重定向”,如图5所示:

4)然后安装。

5)在我们的站点的web.config配置如下:

图3 服务器管理

图4 添加角色服务

图5 选择角色服务

2.小结

在开发ASP.NET网站的过程中,其功能、性能以及安全性都是需要考虑的问题。本文给出了在系统功能已经实现的基础上对以上其性能进行研究和探讨,开发人员在开发ASP.NET网站时要合理地利用ASP. NET的新特性,并通过提高应用程序本身的性能,可以推迟硬件的升级,降低网站的开发成本。从而简便快捷的实现了ASP.NET网站的高性能优化。

[1]王茹.基于ASP.NET应用程序的性能优化[J].黑龙江科技信息,2010,(10).

[2]刘小强.二手转让及房产租售垂直搜索引擎的设计与实现[J].三门峡职业技术学院学报,2010,(3).

[3]刘小强.软件技术专业课程体系构建的研究与实践[J].济源职业技术学院学报,2010,(3).

[4]刘小强.基于QoS服务的网格计算分析与研究[J].科技信息, 2010,(21).

[5]杨智泽.简论提高ASP.Net应用程序性能的六种策略[J].微电子学与计算机,2006,(7).

(责任编辑:方少卿)

TP311

A

1671-752X(2012)02-0065-02

2012-02-21

刘小强(1982-),男,陕西咸阳人,三门峡职业技术学院信息工程系讲师,硕士。

猜你喜欢
三门峡服务端小强
河南三门峡西周墓出土器物
云虚拟机实例建模方法研究
潘小强
宝藏(2018年6期)2018-07-10 02:26:40
云存储中基于相似性的客户-服务端双端数据去重方法
新时期《移动Web服务端开发》课程教学改革的研究
消费导刊(2018年8期)2018-05-25 13:19:48
在Windows Server 2008上创建应用
文物普查——三门峡虢国博物馆在行动
浅谈三门峡库区安全运行管理
河南科技(2014年3期)2014-02-27 14:06:06
“鸽子”玩升级 黑你没商量
小强爬行记