JAVA中各类CACHE机制实现

OSCache

  OSCache是个一个广泛采用的高性能的J2EE缓存框架,OSCache能用于任何Java应用程序的普通的缓存解决方案。

  OSCache有以下特点:

  缓存任何对象,你可以不受限制的缓存部分jsp教程页面或HTTP请求,任何java对象都可以缓存。

  拥有全面的API--OSCache API给你全面的程序来控制所有的OSCache特性。

  永久缓存--缓存能随意的写入硬盘,因此允许昂贵的创建(expensive-to-create)数据来保持缓存,甚至能让应用重启。

  支持集群--集群缓存数据能被单个的进行参数配置,不需要修改代码。

  缓存记录的过期--你可以有最大限度的控制缓存对象的过期,包括可插入式的刷新策略(如果默认性能不需要时)。

  官方网站 http://www.opensymphony.com/oscache/

  Java Caching System

  JSC(Java Caching System)是一个用分布式的缓存系统,是基于服务器的java应用程序。它是通过提供管理各种动态缓存数据来加速动态web应用。

  JCS和其他缓存系统一样,也是一个用于高速读取,低速写入的应用程序。

  动态内容和报表系统能够获得更好的性能。

  如果一个网站,有重复的网站结构,使用间歇性更新方式的数据库教程(而不是连续不断的更新数据库),被重复搜索出相同结果的,就能够通过执行缓存方式改进其性能和伸缩性。

  官方网站 http://jakarta.apache.org/turbine/jcs/

  EHCache

  EHCache 是一个纯java的在进程中的缓存,它具有以下特性:快速,简单,为Hibernate2.1充当可插入的缓存,最小的依赖性,全面的文档和测试。

  官方网站 http://ehcache.sourceforge.net教程/

  JCache

  JCache是个开源程序,正在努力成为JSR-107开源规范,JSR-107规范已经很多年没改变了。这个版本仍然是构建在最初的功能定义上。

  官方网站 http://jcache.sourceforge.net/

  ShiftOne

  ShiftOne Java Object Cache是一个执行一系列严格的对象缓存策略的Java lib,就像一个轻量级的配置缓存工作状态的框架。

  官方网站 http://jocache.sourceforge.net/

  SwarmCache

  SwarmCache是一个简单且有效的分布式缓存,它使用IP multicast与同一个局域网的其他主机进行通讯,是特别为集群和数据驱动web应用程序而设计的。SwarmCache能够让典型的读操作大大超过写操作的这类应用提供更好的性能支持。

  SwarmCache使用JavaGroups教程来管理从属关系和分布式缓存的通讯。

  官方网站 http://swarmcache.sourceforge.net

  TreeCache / JBossCache

  JBossCache是一个复制的事务处理缓存,它允许你缓存企业级应用数据来更好的改善性能。缓存数据被自动复制,让你轻松进行JBoss服务器之间的集群工作。JBossCache能够通过JBoss应用服务或其他J2EE容器来运行一个MBean服务,当然,它也能独立运行。

  JBossCache包括两个模块:TreeCache和TreeCacheAOP。

  TreeCache --是一个树形结构复制的事务处理缓存。

  TreeCacheAOP --是一个“面向对象”缓存,它使用AOP来动态管理POJO(Plain Old Java Objects)

  注:AOP是OOP的延续,是Aspect Oriented Programming的缩写,意思是面向方面编程。

  官方网站 http://www.jboss.org/products/jbosscache

  WhirlyCache

  Whirlycache是一个快速的、可配置的、存在于内存中的对象的缓存。它能够通过缓存对象来加快网站或应用程序的速度,否则就必须通过查询数据库或其他代价较高的处理程序来建立。

时间: 2024-12-01 22:14:06

JAVA中各类CACHE机制实现的相关文章

Java中的反射机制

反射,reflection,听其名就像照镜子一样,可以看见自己也可以看见别人的每一部分.在java语言中这 是一个很重要的特性.下面是来自sun公司官网关于反射的介绍: Reflection is a feature in the Java programming language. It allows an executing Java program to examine or "introspect" upon itself, and manipulate internal pr

全面理解java中的异常处理机制_java

一.java异常总结: 异常就是程序运行时出现不正常运行情况 1.异常由来: 通过java的类的形式对现实事物中问题的描述,并封住成了对象 其实就是java对不正常情况描述后的对象体现 2.对于问题的划分有两种:一种是严重的问题,一种是非严重的问题 对于严重的,java通过Error类来描述 对于Error一般不编写针对性的代码对其进行处理 对于非严重的,java通过Exception类来描述 对于Exception可以使用针对性的处理方式进行处理 3.常见的异常有:数组角标越界异常,空指针异常

浅析Java中的反射机制原理

       反射反射,程序员的快乐!        Java中反射机制使用的还是比较广泛的,系统的灵活性.可扩展性大都都是通过反射等方式来加载外部插件,使得系统与插件解耦的同时,增加了功能.但是很多人都只是会用,却是不知道它的实现机制,今天就由我来带大家揭开反射机制的神秘面纱.        Java中是用Class.forName(classname)来反射类. package com.java.reflecttest; import com.java.dbtest.DBTest; /**

根据实例详解Java中的反射机制

概念:JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法:对于任意一个对象,都能够调用它的任意一个方法和属性:这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制.作用:Java反射机制主要提供了以下功能: 在运行时判断任意一个对象所属的类:在运行时构造任意一个类的对象:在运行时判断任意一个类所具有的成员变量和方法:在运行时调用任意一个对象的方法:生成动态代理. 可以说Java的反射机制是Java中所有框架的基础,要对SSH等框架有一个深刻的理解

由ArrayList来深入理解Java中的fail-fast机制_java

1. fail-fast简介"快速失败"也就是fail-fast,它是Java集合的一种错误检测机制.某个线程在对collection进行迭代时,不允许其他线程对该collection进行结构上的修改. 例如:假设存在两个线程(线程1.线程2),线程1通过Iterator在遍历集合A中的元素,在某个时候线程2修改了集合A的结构(是结构上面的修改,而不是简单的修改集合元素的内容),那么这个时候程序就会抛出 ConcurrentModificationException 异常,从而产生fa

Java中常见的各类Cache机制实现方法和比较

问题描述 OSCacheOSCache是个一个广泛采用的高性能的JavaEE缓存框架,OSCache能用于任何Java应用程序的普通的缓存解决方案.OSCache有以下特点:缓存任何对象,你可以不受限制的缓存部分jsp页面或HTTP请求,任何java对象都可以缓存.拥有全面的API--OSCacheAPI给你全面的程序来控制所有的OSCache特性.永久缓存--缓存能随意的写入硬盘,因此允许昂贵的创建(expensive-to-create)数据来保持缓存,甚至能让应用重启.支持集群--集群缓存

我们该如何良好的实践Java中的Exception机制

首先,我先声明一点,我讨论的仅限于互联网数据产品,当然可能会涉及到一些其他的抽象,但是所有的结论不代表能复用到所有场景.         几乎每个Java程序员都清楚知道Java的异常和错误机制,无论是在面试过程中,还是在学习中,你看到Exception,无非就是了解一下继承关系.子类.和Error的关系等等.当然这些知识点是基础,那么在实践中,用到了吗?你确定你使用Exception时没有偷懒?我的经验告诉我,良好的使用Exception能让你的程序bug更少,或者至少能保证你的程序更容易被理

java和C#事件处理机制

在学习一门语言的时候,如果没有对它的事件处理机制有很好的了解的话,是不算学好了的.我学java和C# 也有一段时间了.在它们过多的相似甚至相同的地方,突然出现一个大相径庭的事件处理机制.于是想和大家分享一下自己的看法.java中采取的是面向对象的机制.C#中沿袭了C/C++中的函数回调机制.如在java中,要实现自定义事件处理,必须经过如下的步骤:1 开发自定义事件类.2 定义监听者接口.3 定义事件激发者的接口. public void add监听者(监听者): public void rem

Java中finally语句与return语句的执行次序

Java finally语句到底是在return之前还是之后执行? 网上有很多人探讨Java中异常捕获机制try...catch...finally块中的finally语句是不是一定会被执行?很多人都说不是,当然他们的回答是正确的,经过我试验,至少有两种情况下finally语句是不会被执行的: (1)try语句没有被执行到,如在try语句之前就返回了,这样finally语句就不会执行,这也说明了finally语句被执行的必要而非充分条件是:相应的try语句一定被执行到. (2)在try块中有Sy