• c# 缓存


    c# 的缓存 接触的应该有

    Cache

    SqlDependency

    SqlCacheDependency

    CacheDependency

    AggregateCacheDependency

    缓存 分为 客户端缓存 和服务器缓存

    服务器缓存所需的数据已经有了.  不用再次查找(当然查找缓存也需要查找) (缓存在服务器中,可以缓存在内存中,也可以缓存在文件里,并且还可以进一步地区分为本地缓存和分布式缓存两种)

    客户端缓存也就是数据在本地机器上存在了. 不需要从服务器获取数据

    用过一些非人的手段,达到变态的要求. 提高响应速度.让数据 刚好的呈现.

    1

    System.Web.Caching命名空间内的类组成

    缓存命名空间主要提供四个种操作:缓存数据对象、对象的缓存依赖和数据库的缓存依赖。其中缓存任何对象都使用一个类Cache,但当缓存发生改变时,普通对象和数据库对象的依赖处理不同。

     
    Cache 对缓存对象的编辑类,其操作包括缓存的增、删、改  
    CacheDependency 基本缓存对象的依赖,当基本对象发生变化时,更新缓存内容

        //假设缓存的来源文件是当前目录下的data.xml文件

        //缓存依赖的文件路径

        CacheDependency mydep = new CacheDependency("data.xml");

    SqlCacheDependency 数据库缓存对象的依赖,当数据库中的数据变化时,更新缓存内容
    (在以下两者之间建立关系:一是在 ASP.NET 应用程序的 Cache 对象中存储的项;二是特定 SQL Server 数据库表或 SQL Server 2005 查询的结果。)
    页面是配置Web.config 配置, 和页面上配置缓存
    AggregateCacheDependency 监视依赖项对象的集合,以便在任何依赖项对象更改时,该缓存项都会自动移除(组合 ASP.NET 应用程序的 Cache 对象中存储的项和 CacheDependency 对象的数组之间的多个依赖项。)

    AggregateCacheDependency dependency = new AggregateCacheDependency();
                dependency.Add(new SqlCacheDependency("NHibernateSample", "Customer"
    ));
                dependency.Add(new CacheDependency(Server.MapPath("~/App_Data/XmlData.xml"
    )));

      Cache.Insert("data", “sdfsdf”, dependency );
         

    SqlDependency 类似于SqlCacheDependency  .也就是数据库发生变动 ,通知程序.

    页面配置

    <%@ OutputCache Duration="" VaryByParam="" VaryByControl="" VaryByHeader="" VaryByCustom="" CacheProfile="" Location="" %>

    Duration:设置缓存到期时间,单位:秒。
    VaryByParam:可用来使缓存输出因查询字符串而异,多个查询字符用分号隔开。
    VaryByControl:可用来使缓存输出因控制值而异。
    VaryByHeader:可用来使缓存输出因请求的 HTTP 标头而异。
    VaryByCustom:可用来使缓存输出因浏览器类型或您定义的自定义字符串而异。
    CacheProfile:结合配置文件使用。
    Location:设置页的可缓存性,值有Any,Client,Downstream,None,Server,ServerAndClient。

  • 相关阅读:
    webSocket
    Spring中注解大全和应用
    原生js替换jQuery各种方法-中文版
    正则表达式-基础知识Review
    Swoole 4.1.0 正式版发布,支持原生 Redis/PDO/MySQLi 协程化
    Javascript 模块化指北
    精读《sqorn 源码》
    nodejs源码—初始化
    ubuntu显卡驱动安装
    iOS推断当前控制器是否在显示
  • 原文地址:https://www.cnblogs.com/jiaofu2012/p/3499771.html
Copyright © 2020-2023  润新知