`
caryl
  • 浏览: 20320 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

缓存的N个层次

阅读更多

列个大纲,以后再写

 

缓存层级由高到低

1、浏览器端缓存

2、eTag

3、反向代理缓存

一般由前段服务器提供功能,通过request的cache control控制

4、页面缓存

缓存整个页面,不执行action,及action filter

5、action缓存

执行action filter

6、片段缓存

只缓存页面的某一部分

7、Model查询缓存

8、数据库缓存

 

缓存策略:预生成、访问时生成

 

更新策略:按时间刷新,根据cache control,内容更新后刷新

 

存储方式:内存、文件、memcache

 

其他:

etag

返回301,通知浏览器没有更新,使用客户端本地缓存

动态内容处理

1、异步调用

2、降低缓存级别

分享到:
评论
2 楼 Hooopo 2010-12-12  
期待
1 楼 lazybone 2009-09-24  
天哪 我竟然记起了好久没上的账号
NET群 骨头前来拜读

    

相关推荐

    Hibernate缓存,性能优化

    一级缓存是Hibernate中最基础的缓存层次,它的生命周期与Session绑定。当Session开启时,一级缓存被创建;当Session关闭或flush后清空时,一级缓存被销毁。一级缓存的使用无需任何配置,是Hibernate默认提供的缓存...

    jsp 缓存处理

    ### 一、缓存的层次与作用 1. **数据库缓存**:数据库系统通常自带缓存机制,如Oracle、MySQL的缓冲池,用于存储最近查询的数据,提高数据访问速度。 2. **持久层缓存**:ORM框架如Hibernate提供了1级和2级缓存,1...

    Memcached 分布式缓存实现原理简介

    在冯·诺依曼计算机体系结构中,存储层次理论是核心,从高速缓存到主存,再到硬盘,存储速度逐级降低,成本也相应增加。缓存的存在是为了减少CPU访问较慢存储的延迟,通过将常用数据保存在更快的存储介质中,提升...

    用于模拟各种计算机缓存的Python程序.zip

    总的来说,这个Python程序提供了一个动手实践的平台,帮助我们理解计算机硬件层次结构中的缓存层次,以及如何通过软件实现对缓存行为的模拟和分析。通过运行和调整不同的缓存策略,我们可以直观地看到它们对整体系统...

    计算机架构项目:具有LRU替换策略的缓存模拟器.zip

    缓存通常有多个层次,例如L1、L2和L3,每一层的容量和速度都不同,越靠近CPU的层次速度越快但容量越小。 LRU替换策略的核心思想是:最近被访问过的数据在未来最有可能再次被访问。因此,当缓存满时,最长时间未被...

    存贮层次模拟器(命中率的实验原代码)

    该段代码主要实现了一个简单的缓存模拟器,用以演示在给定的一组数据访问序列(即地址流)下,如何计算Cache-主存层级结构中的命中率。其中采用的是FIFO(First In First Out)替换策略,即当缓存块已满时,最先加入...

    开源项目-g3n-g3nd.zip

    G3N是一个基于Go语言开发的3D游戏引擎,名为"Go 3D Game Engine"。这个开源项目,g3n-g3nd.zip,包含了G3N引擎的示例代码和资源,帮助开发者理解和学习如何利用G3N构建3D游戏或者应用。G3N以其高效的性能、模块化的...

    计算机组成原理英文版课件:11-Memory.pdf

    \n\n缓存性能的一个关键指标是内存停滞周期(Memory Stall Cycles),它衡量了由于缓存未命中导致的处理器等待时间。为了提高缓存性能,可以通过增加缓存大小、优化替换策略、采用多级缓存等方式进行。\n\n图示中...

    Go-G3N-Go3D游戏引擎

    场景图提供了层次结构,使得操作和更新多个游戏对象变得更加方便。 6. **资源管理**:资源管理器是游戏引擎的关键组成部分,负责加载、缓存和释放图像、音频、模型等资源,以优化内存使用和加载速度。 7. **脚本...

    浅谈性能优化方法和技巧.pdf

    缓存关联是缓存的另一个重要方面,有全关联(full associative)、N-way关联等,缓存关联决定了缓存的访问效率。 缓存类型包括I-cache(指令cache)、D-cache(数据cache)、TLB(MMU的cache)等,每一种又有L1、L2...

    计算机组成原理英文版课件:10-Memory.pdf

    \n\n典型的内存层次结构包括寄存器(Reg’s)、一级缓存(L1 Cache)、二级缓存(L2 Cache)、主内存(Main Memory)和辅助存储(如磁盘)。不同层次的内存具有不同的容量、访问时间和成本,形成了金字塔式的内存...

    架构,N层架构

    N层架构,顾名思义,是指将应用程序分为多个逻辑层次,每个层次都有特定的功能和职责。这种分层设计有助于提高代码的可读性、可重用性和模块化,方便团队协作和系统维护。通常,N层架构包括以下几层: 1. 表示层...

    bulk_cache_fetcher:填补了嵌套缓存和 n+1 查询问题之间的空白

    通常,您要么在控制器中预加载整个对象层次结构(即使在缓存命中时),要么在错过缓存时接受 n+1 查询。 Bulk Cache Fetcher 允许您查询对象列表的缓存,并让您有机会使用您想要的任何:include一次获取所有缓存未...

    基于.Net Framework的N层分布式应用开发

    首先,N层架构通常包括以下层次: 1. 用户界面层(UI Layer):这是与用户交互的部分,可以是Web应用、桌面应用或移动应用。在.NET Framework中,可以使用ASP.NET、Windows Forms或WPF等技术来创建用户界面。 2. ...

    i18n:使用yaml定义本地化文件的简单i18n库

    一个使用yaml定义本地化文件的简单i18n库。 产品特点 层次模型(基于Yaml) 通过分组进行有效访问 缓存创建的实例 缓存上次使用的实例 用法 请参考example包 user : password : error : too-short : "密码太短:...

    层次短语解码器

    同时,缓存技术也可以用于存储部分已完成的解码结果,进一步提升性能。 在编码方面,C++提供了模板元编程和泛型编程,使得代码更加模块化和可复用。此外,多线程和并行计算也是提高解码效率的有效手段,特别是在...

    计算机组成原理英文版课件:9-Memory.pdf

    例如,一个2n × m的RAM芯片,拥有n位地址线和m位数据线。 2. 内存层次结构与缓存需求 内存层次结构是为了提高访问效率而设计的,它将不同速度和容量的存储器分层排列。缓存(Cache Memory)位于CPU和主存之间,...

    PHP使用缓存即时输出内容(output buffering)的方法

    1. `ini_get('output_buffering')`: 这个函数用于获取当前输出缓存的状态,也就是是否开启了输出缓存。如果返回值为1,则表示输出缓存功能已经开启;如果是0,就表示没有开启。这对于检查当前环境配置是否满足使用...

    comp611-hw3

    文档的第三部分Q3集中于内存层次结构的概念,讨论了一个具有L1缓存、主存(DRAM)和硬盘的内存子系统。L1缓存使用物理地址进行索引和标记,并采用写通(write-through)策略,当写操作发生在L1缓存中时,数据同时...

    详解:Intenret web应用开发,N层结构技术讲义(PPT)

    在互联网Web应用开发中,N层结构(N-Tier Architecture)是一种常用的设计模式,它将应用程序分解为多个独立的逻辑层,每个层都有特定的功能,以实现更好的模块化、可扩展性和可维护性。这种架构通常包括以下几个...

Global site tag (gtag.js) - Google Analytics