总结出来的一些ASP.NET程序性能优化的注意事项[不断补充]
本文的各个要点,都是从网上大量文章中总结出来。
参考资料:
http://www.cnblogs.com/lxinxuan/archive/2006/11/06/551980.html
asp.net程序性能优化总结
——备忘具体技术 细节请查询
1. 缓存:页面OutPut缓冲(根据参数VaryByParams,Location、保存到硬盘)、User Control的片断缓存(VaryByControl=”Con”:针对此控件所在的每个页面创建单独的缓存条目)、缓存API、数据缓冲(文件依赖、时间依赖、相对过期依赖)、回调缓存(<asp:Substitution />)。
2. 数据处理方面的优化:
a) 返回大量数据且不做大量处理,返回类型用SqlDataReader,只读数据访问不要使用DataSet。
b) 使用存储过程,好处:1、有助于处理复杂业务。2、可扩展性,数据库结构改变,易于维护修改。3、减少网络传输时间。4、预编译,速度比执行Sql语句快很多。
c) 查询语句优化:SET FORCEPLAN强制Sql Server按表出现顺序使用表。用它选择表联结顺序。
d) 数据库连接使用完毕立即关闭,使用using自动关闭,比手动关闭哪个优?(待查询)
e) 优化查询语句。不在查询语句中包含子查询语句,充分利用索引。
f) 对数据进行分页,按页码和每页条数返回每次请求所需数据。[f、g见9]
g) 返回多个数据集。用SqlCommand对象的ExecuteReader方法返回一个强类型的业务对象,再调用NextResult方法来移动数据集指针来定位数据集,但必须把业务逻辑写到存储过程里面
3. 页面优化:
a) 无特殊要求,使(页面视图状态)EnableViewState=false。如:页面无需回传或者每次仅只是呈现。
b) 页面布局:用FlowLayout比GridLayout(绝对定位,代码多)好。
c) 尽量使用html控件,能用javascript的就用。数据控件选择:Repeater>Datalist>DataGrid
4. 字符串操作:”s” + 2.ToString(); 使用StringBuilder。
5. 采用 Server.Transfer 语法避免不必要的客户端重定向。
6. 启用网络园艺。
7. 优化web服务器:
a) 仅对需要的应用启用身份验证。
b) 考虑对应用程序禁用 AutoEventWireup,需重写Page.OnLoad(),而不能直接使用Page_Load()
c) 从请求处理管线中移除不用的模块。Machine.config 文件中 <httpModules> 节点默认为激活,如果在应用程序中不使用会话状态和输出缓存,则可以从 <httpModules>列表中移除它们。
8. 关闭ASP.NET的Debug模式
9. 其他额外:(没用过,不懂) http://dotnet.mblogger.cn/mark_lee/posts/6329.aspx似乎只针对Server 2003。
a) IIS6.0中启用Gzip压缩发送数据,要修改IIS6.0的xml配置文件。
b) 用IIS6.0的Kernel Caching
c) 后台处理。System.Threading命名空间下Timer类。如:提交一个新帖子……检查,发邮件…
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
总结自网上。
转载于:https://www.cnblogs.com/lxinxuan/archive/2007/01/17/622708.html
总结出来的一些ASP.NET程序性能优化的注意事项[不断补充]相关推荐
- asp.net程序性能优化的七个方面
asp.net程序性能优化的七个方面 一.数据库操作 1.用完马上关闭数据库连接 访问数据库资源需要创建连接.打开连接和关闭连接几个操作.这些过程需要多次与数据库交换信息以通过身份验证,比较耗费服务器 ...
- 原来 CPU 为程序性能优化做了这么多
来自:武培轩 本文主要来学习内存屏障和 CPU 缓存知识,以便于我们去了解 CPU 对程序性能优化做了哪些努力. 首先来看下 CPU 缓存: CPU 缓存 CPU 缓存是为了提高程序运行的性能,CPU ...
- 《C++应用程序性能优化::第五章动态内存管理》学习和理解
<C++应用程序性能优化::第五章动态内存管理>学习和理解 说明:<C++应用程序性能优化> 作者:冯宏华等 2007年版. 2010.8.29 cs_wuyg@126.com ...
- C++应用程序性能优化
C++应用程序性能优化 C++应用程序性能优化系列博客主要依据<C++应用程序性能优化>(第2版)学习整理而来,同时参考部分网络博客. C++应用程序性能优化(一)--应用程序性能优化简介 ...
- C++应用程序性能优化(三)——C++语言特性性能分析
C++应用程序性能优化(三)--C++语言特性性能分析 一.C++语言特性性能分析简介 通常大多数开发人员认为,汇编语言和C语言比较适合编写对性能要求非常高的程序,C++语言主要适用于编写复杂度非常高 ...
- 微信小程序性能优化之一
微信小程序性能优化之一 原文:微信小程序性能优化之一 性能优化 界面和业务逻辑之间事件交互 小程序调用native Native回调小程序 图片源文件优化 渲染优化 ----------------- ...
- Hibernate程序性能优化的考虑要点
Hibernate程序性能优化的考虑要点 Tag:java,j2ee,hibernate,O/R mappling, spring,性能,效率 本文依照HIBERNATE帮助文档,一些网络书籍及项目经 ...
- C++ 应用程序性能优化,第 6 章:内存池
引言 本书主要针对的是 C++ 程序的性能优化,深入介绍 C++ 程序性能优化的方法和实例.全书由 4 个篇组成,第 1 篇介绍 C++ 语言的对象模型,该篇是优化 C++ 程序的基础:第 2 篇主要 ...
- C++ 应用程序性能优化
C++ 应用程序性能优化 eryar@163.com 1. Introduction 对于几何造型内核OpenCASCADE,由于会涉及到大量的数值算法,如矩阵相关计算,微积分,Newton迭代法解方 ...
最新文章
- 重磅!OpenMMLab 更新啦!分类/检测/分割/3D等项目全面升级
- 算法应用 ---拆分字符串为n节字符
- 【如何选】2019我的手机功能需求,千元机功能需求分析手机对比
- Mysql事务与锁深入剖析
- Python中operator模块的操作
- 软件测试性能测试结果,软件性能测试结果分析工具的研究与设计
- linux centos 6.5压缩文件,CentOS 6.10 解压 rar压缩包
- 使用增量备份修复DG中的GAP
- mysql 数据库 向上取整_PHP取整,四舍五入取整、向上取整、向下取整、小数截取...
- android输入流,android – 获取图像输入流的大小
- 代理服务器基本知识普及代理IP使用方法!
- 【OpenGL】实例渲染示例——草地渲染
- 浅谈微信小程序的发展
- 【Rust日报】 2020-01-10 track_caller 錯誤處理大突破
- 蓝墨云班课网页版下载资源文件
- linux iptable配置
- 怎么从视频中提取音频,这四个方法简单实用!
- ar 微信小程序_微信小程序开放AR功能,全面提升交互体验
- 修改mysql字段为主键且自增
- cv2.cvtColor(image,cv2.COLOR_RGB2BGR) opencv颜色空间的转换
热门文章
- 手机是怎么确定位置信息的?
- 图文|Android 使用Thread 和多线程使用互斥锁
- zblog php 七牛缩略图,zblog中Gravatar头像不显示解决方法
- 多布局怎么搭建_怎么制作网页?网页制作基本步骤
- mac系统如何进入系统偏好设置_MacOS Big Sur 系统偏好设置无法解锁Bug解决
- JVM运行参数_JVM内存模型_常用内存分析工具
- 福州大学c语言考试答案,C语言练习模拟考福州大学工程技术学院.doc
- LeetCode 1616. 分割两个字符串得到回文串
- LeetCode 1551. 使数组中所有元素相等的最小操作数(等差数列)
- LeetCode 1403. 非递增顺序的最小子序列(排序)