一、利用HTTP协议
模拟静态页面的 Header 控制 Last-Modify、Expires、Pragma 、Cache-Control 等 HTTP 头信息,利用 304 消息告诉浏览器继续使用本地缓存
一般这种缓存在动态页面的控制中使用几秒以内,适当的减轻服务器的负担
二、利用反向代理
这个在大型门户应用中会应用到。本质也是缓存了页面内容,只是分布到了多个输出服务器,分散了压力。
三、利用页面缓存 和 内容缓存
页面缓存和浏览器缓存的内容基本类似,只是在服务端缓存了,不用每次都重新渲染;适合于WEB首页等允许一定时间内不变的页面
(这种就是我们常见的模板缓存技术)
当然这个节点还有把内容直接生成静态页面的内容缓存方式
四、数据缓存
数据缓存,说白了就是相对数据存储而言,不是每次都从实际存储中获得最新的数据,而是有组织的把可以缓存的数据线保存在比较快速的物理设备上
如:内存。数据的组织、需求也是更具项目、页面等具体情况而详细制定的。
如果是用 MVC 开发模式的,有 在MODEL中封装了缓存的机制的,也有在 V 中设计了在 V与M沟通时,中间加入了 V 对M调用的缓存的机制
(我目前开发的项目中就是使用这个方式,好处是控制比较细腻,缺点是对V层开发人员有要求)
在这个节点可以利用的缓存工具很多,常见的有 Memache、APC 等 ... 说白了就是利用内存来换取时间 ...
五、Query-Cache
这是数据库 查询缓存,由数据库自身的机制实现;开发人员或DBA主要是在配置数据库服务的时候,更具项目的应用情况,具体的配置。
开发WEB应用中,缓存的不同阶段
最新推荐文章于 2024-10-04 08:38:41 发布