没有合适的资源?快使用搜索试试~ 我知道了~
ASP.NET中常用的26个优化性能方法.doc
5星 · 超过95%的资源 需积分: 0 68 下载量 23 浏览量
2008-07-31
10:19:52
上传
评论 1
收藏 61KB DOC 举报
温馨提示
试读
13页
ASP.NET中常用的26个优化性能方法.doc 非常有用,非常有效!
资源详情
资源评论
资源推荐
1. 数据库访问性能优化
数据库的连接和关闭
访问数据库资源需要创建连接、打开连接和关闭连接几个操作。这些过程需要多次与
数据库交换信息以通过身份验证,比较耗费服务器资源。 中提供了连接池
改善打开和关闭数据库对性能的影响。系统将用户的数据库连接放在
连接池中,需要时取出,关闭时收回连接,等待下一次的连接请求。
连接池的大小是有限的,如果在连接池达到最大限度后仍要求创建连接,必然大大影
响性能。因此,在建立数据库连接后只有在真正需要操作时才打开连接,使用完毕后马上
关闭,从而尽量减少数据库连接打开的时间,避免出现超出连接限制的情况。
使用存储过程
存储过程是存储在服务器上的一组预编译的 语句,类似于 系统中的批处理
文件。存储过程具有对数据库立即访问的功能,信息处理极为迅速。使用存储过程可以避
免对命令的多次编译,在执行一次后其执行规划就驻留在高速缓存中,以后需要时只需直
接调用缓存中的二进制代码即可。
另外,存储过程在服务器端运行,独立于 程序,便于修改,最重要的是它
可以减少数据库操作语句在网络中的传输。
优化查询语句
中 连接消耗的资源相当大, 语句运行的时间越长,占用系统资源
的时间也越长。因此,尽量使用优化过的 语句以减少执行时间。比如,不在查询语句
中包含子查询语句,充分利用索引等。
2. 字符串操作性能优化
使用值类型的 方法
在连接字符串时,经常使用号直接将数字添加到字符串中。这种方法虽然简单,
也可以得到正确结果,但是由于涉及到不同的数据类型,数字需要通过装箱操作转化为引
用类型才可以添加到字符串中。但是装箱操作对性能影响较大,因为在进行这类处理时,
将在托管堆中分配一个新的对象,原有的值复制到新创建的对象中。
使用值类型的 方法可以避免装箱操作,从而提高应用程序性能。
运用 类
类对象是不可改变的,对于 对象的重新赋值在本质上是重新创建了一
个 对象并将新值赋予该对象,其方法 对性能的提高并非很显著。
在处理字符串时,最好使用 类,其命名空间是 !。
该类并非创建新的对象,而是通过 "",# $,% 等方法直接对字符串进行
操作,通过 方法返回操作结果。
其定义及操作语句如下所示:
& '
!&&(&)& !'&
**创建字符串
"" '&**添加数值
#"+'&**显示操作结果
3. 优化 Web 服务器计算机和特定应用程序的配置文件以符合您的特定需要
默认情况下,配置被设置成启用最广泛的功能并尽量适应最常见的方案。因
此,应用程序开发人员可以根据应用程序所使用的功能,优化和更改其中的某些配置,以
提高应用程序的性能。下面的列表是您应该考虑的一些选项。
仅对需要的应用程序启用身份验证。默认情况下,身份验证模式为 +),或集
成 ,。大多数情况下,对于需要身份验证的应用程序,最好在 ,-./文件
中禁用身份验证,并在 +0/文件中启用身份验证。
根据适当的请求和响应编码设置来配置应用程序。默认编码格式为 123
4。如果您的应用程序为严格的 %%,请配置应用程序使用 %%以获得稍许的性能提
高。
考虑对应用程序禁用 $+"。在 ,-./文件中将
$+"属性设置为 5-,意味着页面不将方法名与事件进行匹配和将两者
挂钩例如 -6-。如果页面开发人员要使用这些事件,需要在基类中重写这些方法
例如,需要为页面加载事件重写 --,而不是使用 -6-方法。如果
禁用 $+",页面将通过将事件连接留给页面作者而不是自动执行它,获得
稍许的性能提升。
从请求处理管线中移除不用的模块。默认情况下,服务器计算机的 ,-./
文件中 节点的所有功能均保留为激活。根据应用程序所使用的功能,您可以从请求管线中
移除不用的模块以获得稍许的性能提升。检查每个模块及其功能,并按您的需要自定义它。
例如,如果您在应用程序中不使用会话状态和输出缓存,则可以从 列表中移除它们,
以便请求在不执行其他有意义的处理时,不必执行每个模块的进入和离开代码。
4. 一定要禁用调试模式
在部署生产应用程序或进行任何性能测量之前,始终记住禁用调试模式。如果启用了
调试模式,应用程序的性能可能受到非常大的影响。
5. 对于广泛依赖外部资源的应用程序,请考虑在多处理器计算机上启用网络园艺
进程模型帮助启用多处理器计算机上的可缩放性,将工作分发给多个进程
每个 1一个,并且每个进程都将处理器关系设置为其 1。此技术称为网络园艺。
如果应用程序使用较慢的数据库服务器或调用具有外部依赖项的 ,对象这里只是提及
两种可能性,则为您的应用程序启用网络园艺是有益的。但是,在决定启用网络园艺之前,
您应该测试应用程序在网络园中的执行情况。
7只要可能,就缓存数据和页输出
剩余12页未读,继续阅读
yanwei_861120
- 粉丝: 2
- 资源: 33
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 基于CarNet实现裂缝检测python源码+文档说明+数据+图片(课程设计)
- 课程设计-基于耐火材料裂缝剥落检测python源码+课件
- 基于OpenCV的视频道路车道检测python源码+文档说明+实验演示+图片+使用方法(高分毕业设计)
- 基于OpenCV的案例:图像边缘、角点和轮廓检测,图像分割,图像增强;图片拼接;运动目标检测,颜色直方图比较,三帧帧差法,抠图
- SmartPlug-html大一笔记
- SmartPlug-proteusdemo
- Preliminary Findings on Handmade Rattan Baby Crib andBassinet Designs Regarding.zip
- aveebfq_v1.2.83_downyi.com.apk
- 基于有机发光二极管(OLED)的建模优化算法的matlab仿真源码+数据+文档说明+项目说明(高分课程设计)
- hash01-test.c 本人哈希表(一)的示例代码,仅供参考!
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论3