1.禁用session
假如您用不到session会话跟踪请务必禁用它。您可以在每个asp.net页面中设置如下:
<%@ Page language="c#" Codebehind="WebForm1.aspx.cs" AutoEventWireup="false" Inherits="WebApplication1.WebForm1"
EnableSessionState="false" %>
当然您可以在web.config应用程序配置设置中设计<sessionState>mode的值为Off.
2.输出缓冲设置
这个方法对你的应用很有帮助.
asp.net应用程序基本上在服务器端批量生成数据,这时必须设置Response.Flush清空缓冲区。这样会减轻服务器端的缓冲区压力。
<%response.buffer=true%>
替换成
<%response.flush=true%>
3.避免服务器端验证.
用客户端验证代替服务器端验证.服务器端数据验证将会大量消耗您的服务器
上的资源,并且会代来大量的页面数据回传.
4.尽量多使用Repater控件,而不要使用DataList, DataGrid, 和 DataView 控件
Asp.net是一个非常好的平台,不幸的是,有很多控件会大量生成html代码,这
样务必会造成性能上的问题.Asp.net repeater 控件非常好用。使用它你将会
额外多写一些代码,但是将来您会发现它带来的好处远比多写代码带来的麻烦。
5.在执行大动作操作时请使用 HttpResponse.IsClientConnected
if (Response.IsClientConnected)
{
// If still connected, redirect
// to another page.
Response.Redirect("Page2CS.aspx", false);
}
Response.Redirect有什么错误吗,请继续答案在下面
6.使用HTTPServerUtility.Transfer去替换Response.Redirect.
Redirect(重定向)非常麻烦,它仅用于用于从当前物理服务器跳转到其它服务
器.如果只是在本服务器内页面跳转请使用transfer(转发),这样会减少很多没
有必要的客户端请求.
7.当使用服务器端验证时请务必使用Page.IsValid检查页面是否能过验证
由于您使用了验证控件,你可能认为asp.net会为处理以下的所有事情,是这样吗?
错!当有无效数据传到服务器端时IsVlid属性被改为fasle.在继续处理您的表单之前请检查Page.IsValid属性
8.部署应用程序请使用Release版本
在部署应用程序时请确定您的应用程序应是Release版本而不是Debug版本.假如您认为这无关仅要,你就错了。
如果使用debug模板极容易发生请求超时。部署成Release版本,你将会发现速度有很大的提升.
9.关闭 Tracing(追踪)
Tracing是非常可怕的,你有没有忘记关闭它.假如没用,请确定编辑web.config并且关闭它.它将占用大量您的程序资源
<configuration>
<system.web>
<trace enabled="false" pageOutput="false" />
<trace enabled="false" requestLimit="10" pageOutput="false" traceMode="SortByTime" localOnly="true"/>
<compilation debug="false" />
</system.web>
</configuration>
10.Page.IsPostBack要经常去使用
请确定不要执行太多回传代码,我已经记不清有多少开发者忘记使用检查IsPostBack属性.我在平常开发中会经常使用该属性检查.
11.避免使用异常
避免抛出异常和处理异常。除非在万不得已情况下使用异常处理。
异常是相当的浪费服务器端资源并会大大降低效率.尽量不使用异常处理。
12.设置缓存(Caching)
使用页面快速设置页页Caching和使用ASP.net缓冲API!
有很多东西要学,这个可不是你想像中那么简单.这个有很多策略要采用.什么时候使用缓冲?你使用缓存了吗?
13.设置每一次请求缓存
使用HTTPContect.Items仅要添加一个页面用来设置每一个请求缓存.
14.StringBuilder类的使用
StringBuilder.Append 的速要比String + String速度快的多。
假如您连接的字符串较上可以不使用,当连接次数大于3次上建议使用StringBuilder.Append方法,当然也可以使用String.Concat
15.关闭ViewState
假如你没有使用表单数据回传,那么关闭viewsate。控件回自动打开viewstate这样回减慢你应用程序速度.
public ShowOrdersTablePage()
{
this.Init += new EventHandler(Page_Init);
}
private void Page_Init(object sender, System.EventArgs e)
{
this.EnableViewState = false;
}
16.使用分页
.net应用程序分页有利用应用程序效率.每次尽量显示小部分数据,这样会加快页面显示速度。请小心使用混合缓存,请不要设置所有数据在缓存区中。
17.当更新应用程序时使用AppOffline.htm
我非常讨厌asp.net默认错误消息.我是那么的开心假如我再也看不到那些错误消息.确定您的用户也不要看到它.使用AppOffline.htm去替代它。
18.控件使用ControlState而不使用ViewState
19.使用finally方法回收资源
假如你在应用中大量使用数据库连接和访问文件,请确定在用完后关闭它们.
finally块是程序中最后被执行,因此在这里面的代码会确宝一定会被执行,关闭代码一定要在这个方法块中执行
20.请严格按照以上方法执行
asp.net,应用程序性能
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线
暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。
艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。
《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。