• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    ASP.NET2.0缓存(Cache)技术深入理解
    ASP.NET2.0提供了一些新的用于提升程序性能的技术特性,其中,缓存技术是非常重要的一个特性,它提供了一种非常好的本地数据缓存机制,从而有效的提高数据访问的性能。
    数据缓存(DataCaching)就是将数据暂存于内存缓存区中(有时也暂存于硬盘缓存区中)的一种技术.当数据本身改变得不怎么频繁,而被访问的频率又比较高时,采用这种技术将大大提高警惕数据访问的效率.
    1.网页输出缓存
    (1)加显缓存
    %@OutputCacheDuration="60"VaryByParam=none%>
    语句%@%>是网页配置的指令,在这里用来给网页指定缓存参数.其中:Duration="60"代表缓存持续时间为60秒,VaryByParam属性用来指定特定版本的网页输出,因哪个参数而改变.在%@OutputCache%>配置指令中一定要加入VaryByParam属性.即使不使用这个版本属性,也要将它加入,但将其值设为none.
    (2)回调缓存
    %@OutputCacheDuration=60VaryByParam=stata%>
    根据lll.aspx?stata=的内容分别缓存
    下面的方法可以根据内容刷新
    复制代码 代码如下:

    scriptrunat="server">
    SharedFunctionGetCurrentDate(ByValcontextAsHttpContext)AsString
    ReturnNow.ToString()
    EndFunction
    /script>
    asp:SubstitutionID="Substitution1"runat="server"MethodName="GetCurrentDate"/>

    2.数据库缓存
    在ASP.NET2.0中可以通过数据源设置数据表的缓存参数.在SqlDataSource控件的属性中有几项用于设置缓存的参数.
    CacheDuration:代表缓存的持续时间.默认为Infinite(无限)
    CacheExpirationPolicy:缓存的策略.包括两种设置:Absolute和Sliding.当设置成前者时,时限一到缓存区失效;当设置为后者时,时限到立即刷新缓存区中的数据,并继续缓存更新后的数据.
    CacheKeyDependency:可以用于SQLServer2005数据库.
    EnableCaching:默认时为False,即不使用数据缓存,将该属性改为True时即可启动数据缓存.
    SqlCacheDependecy:缓存依赖关系.例如设置为pubs:authors表示数据库Pubs中的authors数据表与它的数据缓存之间建立依赖关系.
    有时数据表太大,缓存区可能会占用太大的内存空间.可以将数据缓存到硬盘的缓存区中,为了实现这一点,需要做一些专门的设置.设置包括两方面.
    :在网页中配置%@OutputCacheDuration="3600"VaryByParam="none"DiskCacheable="true"%>
    :在Web.config文件中指定硬盘缓区区的大小,配置的语句如下:
    复制代码 代码如下:

    system.web>
    caching>
    outputCache>
    diskCacheEnabled="true"maxSizePerApp="2"/>
    /outputCache>
    /caching>
    /system.web>

    其中diskCacheEnabled="true"用来启动硬盘缓存功能;maxSizePerApp="2"用来确定缓存区的容量,这里确定的缓存区最大容量为2M.同于对硬盘的存取速度比较慢,因此硬盘缓存只适用于缓存持续时间较长的情况(本例中缓存时间为1小时).

    3.缓存池
    数据缓存技术大大提高警惕了数据访问的速度,但却可能引发数据不一致的问题.因此以上缓存技术只适用于数据量大,变化频率不高的数据.现在ASP.NET2.0新版本结合数据库SQLServer2005,对数据缓存功能又做了很大的改进,既简化了使用过程,又完善了处理措施,其中最突出的一点就是与数据库相结合自动解决了数据失效问题.
    在ASP.NET2.0中为了解决数据失效问题,通过新类SQLCacheDependency建立起与新一代数据库的"SQL缓存依赖关系(SQLExpressdependencycaching)",这种关系可以使得数据库能够自动监视数据表的状况,一旦数据表发生了变化,立即启动数据库本身的触发器将相应的缓存区中的数据变为无效.
    此方法也可用于SQL7/2000数据库,但是使用关必须先配置所监视的数据库.配置方法比较麻烦,但配置后使用起来还是很简单的.对于更早期版本的SQLServer或者其他类型的数据库(例如Oracle),则不能利用这一功能.
    配置数据库连接池
    C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727>aspnet_regsql.exe
    运行asp.netsqlServer配置向导
    Aspnet_regsql.exe–S“\DBNAME”–E–d“pubs”–ed
    -Ewindows授权
    –ed为enabled
    Aspnet_regsql.exe–S“\DBNAME”–E–D“pubs”–et–t“authors”
    当pubs.authors改变时改变缓存
    %@OutputCacheDuration="9999999"VaryByParam="none"SqlDependency="pubs.authors"%>
    缓存配置
    复制代码 代码如下:

    caching>
    outputCache>
    diskCacheenabled="true"maxSizePerApp="2"/>
    /outputCache>
    outputCacheSettings>
    outputCacheProfiles>
    addname="CacheFor60Seconds"duration="60"/>
    /outputCacheProfiles>
    /outputCacheSettings>
    !--
    sqlCacheDependencyenabled="true"pollTime="1000">
    databases>
    addname="PubsDB"connectionStringName="pubsConnectionString"/>
    /databases>
    /sqlCacheDependency>
    -->
    /caching>
    您可能感兴趣的文章:
    • ASP.NET数据库缓存依赖实例分析
    • asp.net页面SqlCacheDependency缓存实例
    • asp.net中SqlCacheDependency缓存技术概述
    • ASP.Net缓存总结及分析 分享
    • 对asp.net缓存 的深入了解
    • ASP.NET缓存管理的几种方法
    • ASP.NET缓存介绍
    • ASP.NET性能优化之局部缓存分析
    • ASP.NET缓存处理类实例
    上一篇:高效的.Net UDP异步编程实现分析
    下一篇:ADO.NET 读取EXCEL的实现代码((c#))
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    ASP.NET2.0缓存(Cache)技术深入理解 ASP.NET2.0,缓存,Cache,技术,