`

JAVA中各类CACHE机制实现的比较 [转]

 
阅读更多

 

在Java中,不同的类都有自己单独的Cache机制,实现的方法也可能有所不同,文章列举了Java中常见的各类Cache机制的实现方法,同时进行了综合的比较。

  OSCache

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

  OSCache有以下特点:缓存任何对象,你可以不受限制的缓存部分jsp页面或HTTP请求,任何java对象都可以缓存。拥有全面的API--OSCache API给你全面的程序来控制所有的OSCache特性。

  永久缓存--缓存能随意的写入硬盘,因此允许昂贵的创建(expensive-to-create)数据来保持缓存,甚至能让应用重启。支持集 群--集群缓存数据能被单个的进行参数配置,不需要修改代码。缓存记录的过期--你可以有最大限度的控制缓存对象的过期,包括可插入式的刷新策略(如果默 认性能不需要时)。

  Java Caching System

  JSC(Java Caching System)是一个用分布式的缓存系统,是基于服务器的java应用程序。它是通过提供管理各种动态缓存数据来加速动态web应用。JCS和其他缓存系 统一样,也是一个用于高速读取,低速写入的应用程序。动态内容和报表系统能够获得更好的性能。

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

  EHCache

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

  JCache

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

  ShiftOne

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

  SwarmCache

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

  TreeCache/JBossCache

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

  JBossCache包括两个模块:TreeCache和TreeCacheAOP。TreeCache --是一个树形结构复制的事务处理缓存。TreeCacheAOP --是一个“面向对象”缓存,它使用AOP来动态管理POJO(Plain Old Java Objects)

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

  WhirlyCache

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

分享到:
评论

相关推荐

    Java中各类Cache机制实现解决方案

    ### Java中各类Cache机制实现解决方案 #### 一、概述 在现代软件开发中,缓存技术是提升系统性能的关键手段之一。通过缓存频繁访问的数据,可以显著减少对后端数据库的压力,从而提高应用程序的响应速度和用户体验...

    Java认证:各类Cache机制的实现方法

    Java 缓存机制是软件开发中提升应用性能的关键技术,特别是在处理大数据量或者频繁读取的数据时。...在实际开发中,理解并掌握这些缓存机制的实现方法,能够帮助我们构建更高效、可扩展的Java应用程序。

    java技术分享

    - **入门级介绍**:文章首先介绍了如何通过反射获取`Unsafe`对象,接着探讨了如何实现类似C语言中的`sizeof`函数的功能,并演示了如何在非堆内存中分配和释放内存。 - **注意事项**: - 《Unsafe Pointer Chasing》...

    HotSpot实战

    Klass对象表示系统、链接、运行时数据区、方法区、常量池和常量池Cache、...转发表、Stubs、Code Cache、Code生成器、JIT编译器、C1编译器、编译原理、JVM指令集实现、函数的分发机制、VTABLE和ITABLE、异常表、虚拟机...

    JSP+Struts公告管理系统

    在当前的互联网环境中,公告管理系统是电子商务网站不可或缺的一部分,它能够方便地发布、管理、更新以及删除各类公告,为用户提供及时的信息服务。本系统采用经典的Java Web开发框架——JSP(JavaServer Pages)与...

    1000道互联网Java工程师面试题485页.pdf

    本份材料是一份涵盖1000道互联网Java工程师面试题的文档,内容涉及...以上总结的知识点仅仅覆盖了文档中部分面试题的解答,而整份文档内容丰富,覆盖Java工程师在面试中可能遇到的各类技术问题,值得深入研究和掌握。

    Hibernate中文Api最新参考文档

    总之,Hibernate中文API最新参考文档将帮助开发者掌握如何利用Hibernate的各类功能,实现高效、灵活的数据库操作,提升Java应用程序的开发效率和质量。通过深入学习和实践,开发者可以熟练地运用Hibernate解决实际...

    oracle实验二 体系结构、存储结构与各类参数

    ### Oracle实验二:体系结构、存储结构与各类参数 #### 实验目的 1. **理解Oracle体系结构**:包括逻辑组件如表空间、段、区等;物理组件如数据文件、控制文件、重做日志文件等。 2. **了解初始化参数文件以及初始...

    WebSphere+v7.0+培训教程

    WebSphere v7.0 是IBM公司推出的一款企业级应用服务器,作为全球领先的Java EE (Java Platform, Enterprise Edition) 应用服务器,它提供了强大的服务和功能,支持各类企业的业务应用程序运行。本培训教程将深入探讨...

    10个高频Spring BOOT面试题

    - `@ComponentScan`: 用于开启基于类路径下的组件扫描功能,使得项目中的各类组件能够被Spring容器管理。 - `@EnableAutoConfiguration`: 这是最关键的一个注解,它启用了Spring Boot的自动配置功能。 `@...

    2021-2022计算机二级等级考试试题及答案No.10725.docx

    题目中的描述“数据库系统中最早出现的数据模型、用树形结构表示各类实体以及实体之间的联系的模型是**”正确答案是 `A. 层次数据模型`。层次数据模型是早期数据库系统中使用的一种模型,它使用树形结构来表示实体...

    基于ssm+mysql学习交流平台源码数据库论文.doc

    在SSM项目中,MySQL用于存储和管理用户信息、文章数据、学习资源等各类数据。为了确保数据的安全性和完整性,需要合理设计数据库表结构,优化SQL查询,并使用事务控制来处理并发操作。 学习交流平台的开发,主要...

    基于springboot的学生网上选课系统源码数据库.doc

    - **MySQL数据库**:作为后端数据存储解决方案,MySQL是一种开源的关系型数据库管理系统,广泛应用于各类应用中。 #### 四、关键技术点分析 1. **Spring Boot框架的应用**: - **自动化配置**:Spring Boot的核心...

    hibernate3.1

    在提供的压缩包中,`lib`文件夹包含了Hibernate 3.1运行所需的各类库文件。这些库文件是Hibernate与其他系统组件交互的基础,包括: 1. **JDBC驱动**:Hibernate通过JDBC(Java Database Connectivity)与数据库...

    Hadoop源代码分析(完整版)

    - **FileCache**:为提高Map/Reduce作业性能,提供了HDFS文件的本地缓存机制。 - **Fs**:文件系统的抽象层,为不同的文件系统提供统一的访问接口。 - **HDFS**:Hadoop的分布式文件系统,支持大规模数据的存储与...

    嵌入式高级android操作系统练习题2.docx

    src 目录包含所有 java 源文件及各类 java library。res 目录包含应用程序的资源文件,如 strings、colors、styles 等。 本资源摘要信息涵盖了嵌入式高级 Android 操作系统的多个方面,对 Android 开发者和嵌入式...

    springboot465大学生平时成绩量化管理系统pf.zip

    SpringBoot作为Java领域的一款轻量级框架,以其简洁的配置、快速的开发特性,被广泛应用于各类管理系统的构建,包括大学生平时成绩量化管理系统。本文将深入探讨SpringBoot在该系统中的应用,以及它如何帮助实现高效...

    校园赛事管理系统(ssm)

    【校园赛事管理系统(SSM)】是一个基于Java技术栈实现的高效、易用的平台,主要用于组织、管理和跟踪各类校园内的比赛活动。SSM代表Spring、Spring MVC和MyBatis这三个核心组件,它们共同构建了一个强大的后端框架...

    jetty使用文档

    - 可以作为嵌入式服务器,方便集成到其他Java应用中。 - 支持多线程模型,确保高并发性能。 - 具有轻量级架构,快速启动和低内存占用。 2. **Jetty 的特点** - 小巧:Jetty 体积小,启动速度快,适合快速部署和...

Global site tag (gtag.js) - Google Analytics