缓存之EHCache(二)
转载自 http://blog.csdn.net/l271640625/article/details/20528679
六、在页面中使用EHCache缓存
简单的来说,如果一个应用中80% 的时间内都在访问20% 的数据,那么,这时候就应该使用缓存了。
在80/20 原则生效的地方,我们都应该考虑是否可以使用缓存。但即使是这样,缓存也有不同的用法,举个例子,一个网站的首页估计是被访问的次数最多的,我们可以考虑给首页做一个页面缓存。页面访问最频繁的,做缓存。不同的页面的缓存策略有可能有天壤之别。
毫无疑问,几乎所有的网站的首页都是访问率最高的,而首页上的数据来源又是非常广泛的,大多数来自不同的对象,而且有可能来自不同的db ,所以给首页做缓存是一个不错的主意,那么主页的缓存策略是什么样子的呢,我认为应该是某个固定时间之内不变的,比如说2 分钟更新一次。或者根据不同的网页功能采取合理的策略。
在使用ehcache 的页面缓存之前,我们必须要了解ehcache 的2个概念:
(1)timeToIdleSeconds ,多长时间不访问该缓存,那么ehcache 就会清除该缓存。
(2)timeToLiveSeconds ,缓存的存活时间,从开始创建的时间算起。
1、配置ehcache.xml文件
2、在web.xml配置文件中配置过滤器信息
好了,缓存整个页面看上去是非常的简单,甚至都不需要写一行代码,只需要几行配置就行了,够简单吧,虽然看上去简单,但是事实上内部实现却不简单哦,有兴趣的话,大家可以看看SimplePageCachingFilter 继承体系的源代码。
缓存首页(整个页面)示例:
01
|
< filter >
|
02
|
< filter-name > indexCacheFilter </ filter-name >
|
03
|
< filter-class >
|
04
|
net.sf.ehcache.constructs.web.filter.SimplePageCachingFilter
|
05
|
</ filter-class >
|
06
|
</ filter >
|
07
|
< filter-mapping >
|
08
|
< filter-name > indexCacheFilter </ filter-name >
|
09
|
< url-pattern > *index.action </ url-pattern >
|
10
|
</ filter-mapping >
|
缓存首页的部分内容时,需要使用SimplePageFragmentCachingFilter 这个filter 。如:
01
|
< filter >
|
02
|
< filter-name > indexCacheFilter </ filter-name >
|
03
|
< filter-class >
|
04
|
net.sf.ehcache.constructs.web.filter.SimplePageFragmentCachingFilter
|
05
|
</ filter-class >
|
06
|
</ filter >
|
07
|
< filter-mapping >
|
08
|
< filter-name > indexCacheFilter </ filter-name >
|
09
|
< url-pattern > */index_right.jsp </ url-pattern >
|
10
|
</ filter-mapping >
|
这个jsp 需要被jsp:include 到其他页面,这样就做到的局部页面的缓存。这一点貌似没有oscache 的tag 好用。
缓存之EHCache(二)相关推荐
- Spring Boot 揭秘与实战(二) 数据缓存篇 - EhCache
文章目录 1. EhCache 集成 2. 源代码 本文,讲解 Spring Boot 如何集成 EhCache,实现缓存. 在阅读「Spring Boot 揭秘与实战(二) 数据缓存篇 - 快速入门 ...
- 缓存工具EhCache使用
一.缓存工具EhCache EhCache是一种广泛使用的开源Java分布式缓存.主要面向通用缓存, JavaEE和轻量级容器.可以和大部分Java项目无缝整合,例如: Hibernate中的缓存就是 ...
- 三大缓存框架ehcache、memcache和redis的介绍
三大缓存框架ehcache.memcache和redis的介绍 2016-04-12 架构说 4964 阅读 最近项目组有用到这三个缓存,去各自的官方看了下,觉得还真的各有千秋!今天特意归纳下各个缓存 ...
- Spring 3.1:缓存和EhCache
如果在网上查找使用Spring 3.1内置缓存的示例,那么通常会碰到Spring的SimpleCacheManager ,Spring的家伙说这对"用于测试或简单的缓存声明很有用" ...
- 缓存系列之二:CDN与其他层面缓存
缓存系列之二:CDN与其他层面缓存 一:内容分发网络(Content Delivery Network),通过将服务内容分发至全网加速节点,利用全球调度系统使用户能够就近获取,有效降低访问延迟,提升服 ...
- Java的进程内缓存框架:EhCache (转)
EhCache 是一个纯Java的进程内缓存框架,具有快速.精干等特点,是Hibernate中默认的CacheProvider. Ehcache缓存的特点: 1. 快速. 2. 简单. 3. 多种缓存 ...
- Hibernate缓存和ehcache
缓存的概念 计算机领域非常通用的概念.它介于应用程序和永久性数据存储源(如硬盘上的文件或者数据库)之间,其作用是降低应用程序直接读写永久性数据存储源的频率,从而提高应用的运行性能.缓存中的数据是存储源 ...
- 缓存之EHCache
转载自 http://blog.csdn.net/l271640625/article/details/20528573 一.简介 非常简单,而且易用. ehcache 是一个非常轻量级的缓存 ...
- springMVC集成缓存框架Ehcache
概述 Ehcache算是当前比较流行的缓存框架,使用缓存可以极大的缓解服务器和数据库的压力,提高访问效率,提高服务器的并发能力.接下来我们看怎么把缓存在spring mvc种使用起来. 详细 代码下载 ...
最新文章
- 关于Java“回调”的详细理解及使用
- 1分钟解决VS每次运行都显示“正在还原nuget程序包”问题
- java日志统一集成的两种方案
- 画单自由度系统传递函数(实频,虚频,幅频,相位,导纳)
- java中main函数的String[] args
- mitdump爬取当当网APP图书目录
- ASP.NET Core on K8S学习初探(1)
- ef生成mysql字段注释_EFcore+MySql 数据迁移的时候,怎么给表结构加注释?
- Ubuntu下ADSL配置
- PyQt5-使用QDialog显示通用对话框
- java流水号_Java生成流水号
- CAD转换PDF文件失败,打开后内容是空白的
- 微信企业号回调模式 java_java微信企业号开发之开发模式的开启
- Flutter | 和小老弟一起玩转Widget
- html 点击选择变色,css实现选中后变色并且效果不消失
- mac文本编辑写html5代码,BBEdit For Mac v13.5.5 专业的的文本和HTML编辑器
- html表白程序源码 html生日快乐网站制作 HTML生日快乐代码 表白程序源码html 程序员表白代码html
- 解决Android虚拟机启动时System UI isn‘t responding错误
- OpenGL的图形渲染过程
- 优化版GM后台包站系统+码支付/代理/84个GM游戏
热门文章
- 最简单的基于FFmpeg的AVDevice例子(读取摄像头)
- 重载-运算符(感觉怪怪的)
- C++Template 模版的本质
- 不需要SFU实现WebRTC联播实践
- Java基础之正则表达式
- GC之7大垃圾收集器详解(上)
- 威胁情报大会直击 | 企业IT部王森:腾讯企业终端安全管理最佳实践
- 无锁链表的c++实现
- undefined: resolver.BuildOption undefined: resolver.ResolveNowOption 报错的解决办法
- Centos: 解决系统编码 locale 的报错 LC_CTYPE / LC_ALL 问题