TA的每日心情 | 衰 2021-2-2 11:21 |
|---|
签到天数: 36 天 [LV.5]常住居民I
|
一、OSCache是什么?2 b: u( K/ ^( V: ?; n/ p' V
OSCache标记库由OpenSymphony设计,它是一种开创性的缓存方案,它提供了在现有JSP页面之内实现内存缓存的功能。OSCache是个一个被广泛采用的高性能的J2EE缓存框架,OSCache还能应用于任何java应用程序的普通的缓存解决方案。- ?* x, S6 o5 C
二、OSCache的特点* K+ n6 ]% y5 [0 r1 g
(1) 缓存任何对象:你可以不受限制的缓存部分jsp页面或HTTP请求,任何java对象都可以缓存。
, X; L5 v! I5 Q/ h# A, X4 V (2) 拥有全面的API:OSCache API允许你通过编程的方式来控制所有的OSCache特性。
. u6 X( I0 R* n( Z+ [* m C p* ~ (3) 永久缓存:缓存能被配置写入硬盘,因此允许在应用服务器的多次生命周期间缓存创建开销昂贵的数据。
% D( k1 b' X% E6 b (4) 支持集群:集群缓存数据能被单个的进行参数配置,不需要修改代码。; C, t/ D6 q4 A
(5) 缓存过期:你可以有最大限度的控制缓存对象的过期,包括可插入式的刷新策略(如果默认性能不能满足需要时)。
& v" O+ f+ |$ \# m) l: [三 、本demo实现了基本的页面缓存数据 后续案例会一一添加。
- a% D9 z1 f" X (1)、所需jar包:commons-logging.jar、oscache-2.4.1.jar 如果集群通信还需加入 jgroups-all.jar。( {/ k- ~7 w4 n, s4 _) P( X
" R/ B4 k0 x: x$ d (2)、oscache.properties基本配置说明; D& B; d1 j7 \ a/ i" ]# v. I
#缓存到硬盘上cache.memory=false
9 a. d; z4 k9 J% H* O0 ^ #缓存到硬盘上时需要设置,设置持久化类DiskPersistenceListener,持久化到硬盘上 cache.persistence.class=com.opensymphony.oscache.plugins.diskpersistence.DiskPersistenceListener
5 I* B' W' m' @, @7 d #缓存到硬盘上时需要设置,缓存到硬盘上的路径cache.path=D:\\myapp\\cache# P- a0 ?2 I& ~8 r3 r
#设置缓存数量cache.capacity=1000) m! V6 U: V( H, ^1 G: t
#设置缓存在内存溢出时缓存到硬盘上cache.persistence.overflow.only=true1 p1 i; r& \( c3 R& `) a
4 L5 u( r- W+ E- r: H
(3)、把oscache.tld 标签放到WEB-INF下。, I/ m1 i6 A4 t' R
2 E6 S+ j) ]5 H4 S. O- p9 R5 M
(4)、测试页面index.jsp: d# Q' ~- J. J# \- A+ z
- <%@ page language="java" import="java.util.*" pageEncoding="UTF8"%>
* Q. S' f4 N1 O7 c: D& u - <%@ taglib uri="/WEB-INF/oscache.tld" prefix="cache" %>$ G; {- z d9 y# I4 c
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
) B' w" y1 Z3 Y) M( X/ X B - <html>6 ~. M/ x# ~# |9 Q& z2 h3 J7 b
- <head>! h- j I# \& Z) j3 e7 V
- <title>osCache缓存设置 Powered by科帮网</title>
: s0 J1 I8 ^2 \2 k, @9 [, G - <meta http-equiv="pragma" content="no-cache">8 _: c' T' w! }* h, l% \5 O# K5 B
- <meta http-equiv="cache-control" content="no-cache">" E3 N: q n0 V9 u: r8 A' y
- <meta http-equiv="expires" content="0">
& b h! p7 z5 c) l& ` - <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
9 Y8 o1 r, Y' \4 n - <meta http-equiv="description" content="This is my page">5 q: n$ b7 {; ~
- </head>, c. x2 r2 k5 _/ o, \( w
-
) L7 L2 q* T" u2 h - <body>3 |% l+ B3 {$ ]: S) u
- 测试缓存当前时间为 10秒 10秒之内刷新不会变 10秒之后时间发生变化:
* K5 Y9 r* W5 F6 [2 O - <cache:cache time="10">
1 U, {" C' h6 c. K: E - <%
5 `/ m. T) W' @6 |8 D% B( L$ v - long time= System.currentTimeMillis();- V3 |3 D$ ?: T( {8 U
- Date date=new Date(time);3 t" N/ M1 q( m6 D4 t
- %>
7 w8 b9 A9 O( B/ r; f - <%=date.toLocaleString()%>
& h* J1 K, U2 A& _+ | - </cache:cache>
$ x9 a. Z% F: h! K9 J# u - </body>
) p5 d" ^( Q, Q3 \" j. M - </html>
- a: x1 l3 l# G8 k8 \
复制代码
! g7 \$ A8 o1 g; e' s0 ^
7 f% ?. H( e: q( c
OsCache报错error while trying to flush writer
( I2 L7 B/ V/ U1 ~& R! s7 o* T* Phttp://www.52itstyle.top/thread-765-1-1.html7 N9 U Q8 `% C- p8 H
OSCache缓存框架介绍 局部缓存和全局缓存的使用和基本配置项
. I. B. x7 A: F2 J4 ~http://www.52itstyle.top/thread-766-1-1.html
0 P5 ?, I8 A! [8 I
osCache缓存页面数据项目源码(科帮网).zip
(185.15 KB, 下载次数: 26, 售价: 2 IT币)
0 |7 F; G# v' Y H" I2 n
3 e) V' A- J, C+ ^' \" J( D* E3 c
9 y) E# l* z: Z( N" H6 y |
|