ASP.NET动态网站开发教程(课件) 教学课件 作者 7-302-12754-9kchap11.ppt

ASP.NET动态网站开发教程(课件) 教学课件 作者 7-302-12754-9kchap11.ppt

ID:50018725

大小:70.00 KB

页数:14页

时间:2020-03-07

ASP.NET动态网站开发教程(课件) 教学课件 作者 7-302-12754-9kchap11.ppt_第1页
ASP.NET动态网站开发教程(课件) 教学课件 作者 7-302-12754-9kchap11.ppt_第2页
ASP.NET动态网站开发教程(课件) 教学课件 作者 7-302-12754-9kchap11.ppt_第3页
ASP.NET动态网站开发教程(课件) 教学课件 作者 7-302-12754-9kchap11.ppt_第4页
ASP.NET动态网站开发教程(课件) 教学课件 作者 7-302-12754-9kchap11.ppt_第5页
资源描述:

《ASP.NET动态网站开发教程(课件) 教学课件 作者 7-302-12754-9kchap11.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第11章提高ASP.NET应用程序的性能7/30/2021111.1缓存技术页面输出缓存页面数据缓存页面部分缓存System.Web.Caching命名空间7/30/2021211.1.1页面输出缓存页面输出缓存是把一次请求所产生的动态输出保存于内存中。在一个负担很重的站点,即使将一个经常被访问的页面缓存很短的时间,都可以带来性能上很大的提高。当使用输出缓存时,后继的对页面的请求将直接从内存中取出页面而不重新创建页面。7/30/2021311.1.2页面数据缓存页面数据缓存是传统的应用程序缓存技术,可以使用它以编程方式将任意对象(例如数

2、据集)存储到服务器内存,这样应用程序可以节省重新创建这些对象所需的时间和资源。ASP.NET提供了一个相当出色的缓存引擎机制,它允许页面保存和索引HTTP请求所要求的各种各样的对象。ASP.NET的缓存对各个应用来说是私有的,是存储各种对象的存储器。页面数据缓存是由Cache类实现的,Cache对象是每个应用程序专用的,其生存期依赖于该应用程序的生存期。当重新启动应用程序时,将重新创建其Cache对象的实例。ASP.NET允许根据外部文件、目录或另一个缓存项定义缓存项的有效性。这些叫做文件依赖项和键依赖项。如果依赖项更改,则缓存项失效并

3、被从Cache中移除。7/30/2021411.1.3页面部分缓存有时候实际情况不允许缓存整个页面,部分的页面必须根据每次请求来创建。在这种情况下,可以使用部分缓存技术来缓存那些可以缓存的部分。页面部分缓存技术对用户控件实行缓存,同时需要使用@OutputCache指令,定义客户控件的缓存策略。7/30/2021511.1.4System.Web.Caching命名空间System.Web.Caching命名空间提供用于缓存服务器上常用数据的类,其中包括Cache和CacheDependency类。7/30/2021611.2提高数据库

4、相关应用程序的性能优化数据库设计优化查询优化代码设计7/30/2021711.2.1优化数据库设计逻辑设计:数据库的逻辑设计主要指表、关系以及约束等数据库对象的定义和设计。一般来说,良好的数据库逻辑设计至少应该满足数据库设计理论的前三个范式,即第一范式(没有重复的组或多值的列),第二范式(每个非键字段须依赖于主键,不能依赖于组合主键的某个组成部分)和第三范式(一个非键字段不能依赖于另一个非键字段)。物理设计:优化数据库的物理设计是指尽可能快地对数据进行物理访问和维护,这涉及到磁盘系统、对象、索引等。例如使用磁盘阵列可以有效的提高数据访问

5、速度,或者可以把一个被频繁访问的很大的数据表分割成几个较小的表,放在多个单独的智能型磁盘控制器的数据库设备上,这样也可以提高性能。因为有多个磁头在查找,所以数据分离也能提高性能。7/30/2021811.2.2优化查询使用数据库的存储过程,不仅可以避免多次对命令的编译,而且可以独立于程序,便于修改。使用存储过程还可以减少网络中的数据传输,进一步的提高性能。使用带有参数的SQL命令当查询多个数据表时,要遵守一个原则:先过滤后连接。7/30/2021911.2.3优化代码设计ADO.NET为数据库应用程序的性能提供了很好的支持,例如采用池连

6、接可以显著提高应用程序的性能。应用程序中经常有多个用户执行相同类型的数据库访问,例如显示某个表中的全部数据。如果为每个用户打开单独的连接,那么会造成必要要的资源浪费。此时,可以通过共享到数据源的连接来提高应用程序的性能,也就是使用池连接。当到数据源的连接打开时,.NETFramework数据提供程序会创建和连接匹配的一个连接池。连接池是为每个惟一的连接字符串创建的。如果相同的连接被打开,那么该连接使用同一个连接池。7/30/20211011.3性能测试性能瓶颈性能测试工具7/30/20211111.3.1性能瓶颈CPU处理能力瓶颈:可以

7、使用系统监测程序确定CPU的使用率,如果CPU以75%或更高的速率长时间运行,那么就可以肯定可能碰到了CPU性能的瓶颈问题了。此时,只有更换较快的CPU才能够有效的解决这个瓶颈。内存瓶颈:内存瓶颈也是较为常见的瓶颈,数据库管理系统会占用大量的系统内存以提高执行的性能,如果内存不足,势必会造成应用程序性能下降。磁盘读写瓶颈:当内存不足时,数据库管理程序可能会使用磁盘作为缓存,这样造成大量的物理I/O操作。另外,数据库用来缓存数据越多,读写I/O的操作就越频繁。由物理I/O操作发生的瓶颈问题是数据库系统可能遇到的最常见的同硬件有关的性能问题

8、。在通常情况下,增加磁盘驱动器并组成磁盘阵列能够有效解决这个性能问题。7/30/20211211.3.2性能测试工具Microsoft提供了名为WebApplicationStress(WAS)工具来测试网

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。