- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第9章 Web应用的性能调试与优化
如何开发高性能的Web应用系统
跟踪与调试
ASP.NET的缓存对象Cache
ASP.NET的输出缓存技术
一、如何开发高性能的Web应用系统
页面设计
数据访问
状态管理
应用程序设计与配置
1、页面设计
必须进行输入验证
慎用自动回发功能,应尽量统一提交
禁用视图状态(节省服务器的处理时间并减少页的大小)
动态添加控件时要灵活使用Page_Init或Page_Load事件函数,以避免对往返行程执行不必要的处理
2、 数据访问
必须进行输入验证,以防止大量的垃圾数据信息最终传送给数据库服务器处理
在用SQL Server存储数据时,建议使用存储过程访问数据。
如果页面只是从数据库中读取数据,应该尽量使用SqlDataReader,而不是DataSet。
3、 状态管理
当不需要会话状态时,可以禁用会话状态功能。
选择适当的会话状态提供程序
进程内会话状态(Session对象来存储用户会话数据,是速度最快的解决方案)
作为Windows服务的进程外会话状态
SQL Server数据库中的进程外会话状态。
4、应用程序设计与配置
尽可能地避免异常的发生,或者尽可能地捕获有可能发生的异常。
预编译Web应用程序。
使用CLR的垃圾回收器自动回收内存。
优化配置文件,保证应用程序的需要即可。
IIS可能因内存泄漏和设计缺陷而导致性能下降,当停止进程或重新加载页面时重新获取数据也会导致性能下降,因此应当平衡定期回收的需求。
通过优化服务器配置,避免存在大量等待处理的请求或线程,确保服务器的吞吐量。
Trace对象概念
TraceContent类的实例,通过Page.Trace属性公开
功能:可跟踪运行过程,既能够在 Web页中显示信息,也能够将信息存储在内存中。
启用页面级跟踪
方法:%@ Page Language=c# Trace=true %
二、跟踪与调试
1、 跟踪
启用应用程序级跟踪
在web.config配置文件中添加:trace enabled =“… ” pageOutput =“…” localOnly =“…”/
跟踪查看器:http://服务器名/项目名/trace.axd
举例:例9-1和9-2
二、跟踪与调试
1、 跟踪
9
跟踪设置对跟踪结果显示方式的影响
2、调试
Debug对象概念
封装于System. Diagnostics中,使用时要注意导入。
只在调试模式下运行,调试信息只在调试器的输出窗口中显示。
启用调试模式
方法:%@ Page Language= c# Debug=true %或者在配置文件中添加compilation debug=true/
在VS中调试Web窗体
设置断点→设置启始页→开始调试
三、ASP.NET的缓存对象Cache
Cache对象概述
Cache对象的使用方法
缓存策略的设置
1、 Cache对象概述
Cache的作用
Web窗体在首次请求数据项时,将数据缓存在内容,在以后的请求中可直接使用。
通过HttpContext 或 Page 对象的 Cache 属性引用
Cache特点
每一个 Web 应用程序只有一个 Cache 对象,并且不能被其他 Web 应用程序访问;
Web 应用程序重启时将创建 Cache 对象;
Cache对象使用键/值词典结构存储和检索对象,可替代Application对象
使用Cache的优点
(1) 比每次请求时创建新对象速度快
(2) 支持自动锁定管理
(3) 自动管理缓存资源
(4) 支持回调函数(当移除项时,执行回调函数)
(5) 支持基于依赖项的移除
2、Cache对象的使用方法
存储数据
(1)隐式写入:Cache[键名]=值;
例如:Cache[visitor]=Vip User;
Cache[visitedTime]=DateTime.Now;
(2)显式写入:Cache.Insert (键名,值);
例如:Cache.Insert (visitor,Vip User);
Cache.Insert (visitedTime, DateTime.Now);
检索数据
格式:Cache[键名]
例如:DateTime time= (DateTime)Cache[visitedTime];
注意:该对象在Web窗体中通过Page.Cache即可访问,而在Global.asax中必须通过HttpContext.Current.Cache访问。
例9-3
3、 缓存策略的设置
public void Insert (
string key, //指定缓存项的键名
Object value,
您可能关注的文档
- VFP数据结构与算法(精品·公开课件).ppt
- VFP数据库系统概论(精品·公开课件).ppt
- VF数据库第1-3章 数据库系统概述(精品·公开课件).ppt
- VICTOR家庭影音娱乐(精品·公开课件).ppt
- VHDL程序设计教程讲义 chapter3(精品·公开课件).ppt
- VIP客户的管理与维护(精品·公开课件).ppt
- Visio 技能及色彩理论(精品·公开课件).ppt
- VIP会员招募、管理、维护方案(精品·公开课件).ppt
- Visio2003教程(精品·公开课件).ppt
- Visual FoxPro 60程序设计教程 第8章 面向对象的程序(精品·公开课件).ppt
- WEB应用快速开发框架及工作流平台介绍(精品·公开课件).ppt
- Web信息系统设计基础01(精品·公开课件).ppt
- Western blot 实验介绍及流程(精品·公开课件).ppt
- WEIR集团介绍(精品·公开课件).ppt
- WES技术简介(精品·公开课件).ppt
- what a wonderful world(精品·公开课件).ppt
- What's the matter Section A-2课件(精品·公开课件).ppt
- What叫公众演说(精品·公开课件).ppt
- When is your birthday课件人教版(精品·公开课件).ppt
- WIFI实时定位考勤系统(精品·公开课件).ppt
最近下载
- DB32_T 3715-2020 技术交易平台服务规范.docx
- T_CI 263-2024 水上装配式钢结构栈桥(平台)施工技术规程.docx VIP
- 职业技术学院《多轴加工技术》课程标准 数控技术专业.docx VIP
- 14X505-1火灾自动报警系统设计规范图示.pdf VIP
- 《人大代表为人民》课件.pptx VIP
- JC-T 799-2007 装饰石膏板-建材行业标准.pdf VIP
- 2025军队文职考试考前30分【数学1】.pdf VIP
- 湖南省2026届高三九校联盟第一次联考英语试卷(含答案解析).docx
- 中心静脉导管相关感染指南.pptx VIP
- NBSH_T 0162-2021 石油馏分中碱性氮含量的测定 颜色指示剂法.docx VIP
文档评论(0)