「java缓存比较」java缓存类
今天给各位分享java缓存比较的知识,其中也会对java缓存类进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
- 1、JAVA中各类CACHE机制实现的比较
- 2、JAVA几种缓存技术介绍说明
- 3、java web开发缓存方案,ehcache和redis哪个更好
- 4、JAVA目前比较常用的缓存有哪些? 集中式缓存与分布式缓存有何区别? 它们应用场景是?
- 5、面试官要求我研究一个Java缓存框架,哪个比较好
JAVA中各类CACHE机制实现的比较
在 NET中 实现CACHE是件很容易的事 在java中 是如何实现的呢?有哪些解决方案呢?
归纳了下 大概有下面这些方案
OSCache
OSCache是个一个广泛采用的高性能的J 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 充当可插入的缓存 最小的依赖性 全面的文档和测试
官方网站
JCache
JCache是个开源程序 正在努力成为JSR 开源规范 JSR 规范已经很多年没改变了 这个版本仍然是构建在最初的功能定义上
官方网站
ShiftOne
ShiftOne Java Object Cache是一个执行一系列严格的对象缓存策略的Java lib 就像一个轻量级的配置缓存工作状态的框架
官方网站
SwarmCache
SwarmCache是一个简单且有效的分布式缓存 它使用IP multicast与同一个局域网的其他主机进行通讯 是特别为集群和数据驱动web应用程序而设计的 SwarmCache能够让典型的读操作大大超过写操作的这类应用提供更好的性能支持
SwarmCache使用JavaGroups来管理从属关系和分布式缓存的通讯
官方网站
TreeCache / JBossCache
JBossCache是一个复制的事务处理缓存 它允许你缓存企业级应用数据来更好的改善性能 缓存数据被自动复制 让你轻松进行JBoss服务器之间的集群工作 JBossCache能够通过JBoss应用服务或其他J EE容器来运行一个MBean服务 当然 它也能独立运行
JBossCache包括两个模块 TreeCache和TreeCacheAOP
TreeCache 是一个树形结构复制的事务处理缓存
TreeCacheAOP 是一个 面向对象 缓存 它使用AOP来动态管理POJO(Plain Old Java Objects)
注 AOP是OOP的延续 是Aspect Oriented Programming的缩写 意思是面向方面编程
官方网站
WhirlyCache
Whirlycache是一个快速的 可配置的 存在于内存中的对象的缓存 它能够通过缓存对象来加快网站或应用程序的速度 否则就必须通过查询数据库或其他代价较高的处理程序来建立
lishixinzhi/Article/program/Java/hx/201311/25530
JAVA几种缓存技术介绍说明
1、OSCache
OSCache是个一个广泛采用的高性能的J2EE缓存框架,OSCache能用于任何java应用程序的普通的缓存解决方案。
OSCache有以下特点:
(1)缓存任何对象,你可以不受限制的缓存部分jsp页面或HTTP请求,任何java对象都可以缓存。
永久缓存--缓存能随意的写入硬盘,因此答应昂贵的创建(eXPensive-to-create)数据来保持缓存,甚至能让应用重启。
(2)支持集群--集群缓存数据能被单个的进行参数配置,不需要修改代码。
缓存记录的过期--你可以有最大限度的控制缓存对象的过期,包括可插入式的刷新策略(假如默认性能不需要时)。
2、Java Caching System
JSC(Java Caching System)是一个用分布式的缓存系统,是基于服务器的java应用程序。它是通过提供治理各种动态缓存数据来加速动态web应用。
JCS和其他缓存系统一样,也是一个用于高速读取,低速写入的应用程序。
动态内容和报表系统能够获得更好的性能。
假如一个网站,有重复的网站结构,使用间歇性更新方式的数据库(而不是连续不断的更新数据库),被重复搜索出相同结果的,就能够通过执行缓存方式改进其性能和伸缩性。
3、EHCache
EHCache 是一个纯java的在进程中的缓存,它具有以下特性:快速,简单,为Hibernate2.1充当可插入的缓存,最小的依靠性,全面的文档和测试。
4、JCache
JCache是个开源程序,正在努力成为JSR-107开源规范,JSR-107规范已经很多年没改变了。这个版本仍然是构建在最初的功能定义上。
5、ShiftOne
ShiftOne Java Object Cache是一个执行一系列严格的对象缓存策略的Java lib,就像一个轻量级的配置缓存工作状态的框架。
6、SwarmCache
SwarmCache是一个简单且有效的分布式缓存,它使用ip multicast与同一个局域网的其他主机进
行通讯,是非凡为集群和数据驱动web应用程序而设计的。
SwarmCache能够让典型的读操作大大超过写操作的这类应用提供更好的性能支持。
SwarmCache使用JavaGroups来治理从属关系和分布式缓存的通讯。
扩展资料
Java中缓存存在的原因:
一 般情况下,一个网站,或者一个应用,它的一般形式是,浏览器请求应用服务器,应用服务器做一堆计算后再请求数据库,数据库收到请求后再作一堆计算后把数据 返回给应用服务器。
应用服务器再作一堆计算后把数据返回给浏览器,这个是一个标准流程。但是随着互连网的普及,上网的人越来越多,网上的信息量也越来越多。
数据库每秒中接受请求的次数也是有限的,如果利用有限的资源来提供尽可能大的吞吐量呢。一个办法:减少计算量,缩短请求流程(减少网络io或者硬盘io),这时候缓存就可以大展手脚了。
缓存的基本原理就是打破上图中所描绘的标准流程,在这个标准流程中,任何 一个环节都可以被切断.请求可以从缓存里取到数据直接返回。
java web开发缓存方案,ehcache和redis哪个更好
Ehcache
在java项目广泛的使用。它是一个开源的、设计于提高在数据从RDBMS中取出来的高花费、高延迟采取的一种缓存方案。正因为Ehcache具有健壮性(基于java开发)、被认证(具有apache 2.0 license)、充满特色(稍后会详细介绍),所以被用于大型复杂分布式web application的各个节点中。
1. 够快
Ehcache的发行有一段时长了,经过几年的努力和不计其数的性能测试,Ehcache终被设计于large, high concurrency systems.
2. 够简单
开发者提供的接口非常简单明了,从Ehcache的搭建到运用运行仅仅需要的是你宝贵的几分钟。其实很多开发者都不知道自己用在用Ehcache,Ehcache被广泛的运用于其他的开源项目
比如:hibernate
3.够袖珍
关于这点的特性,官方给了一个很可爱的名字small foot print ,一般Ehcache的发布版本不会到2M,V 2.2.3 才 668KB。
4. 够轻量
核心程序仅仅依赖slf4j这一个包,没有之一!
5.好扩展
Ehcache提供了对大数据的内存和硬盘的存储,最近版本允许多实例、保存对象高灵活性、提供LRU、LFU、FIFO淘汰算法,基础属性支持热配置、支持的插件多
6.监听器
缓存管理器监听器 (CacheManagerListener)和 缓存监听器(CacheEvenListener),做一些统计或数据一致性广播挺好用的
JAVA目前比较常用的缓存有哪些? 集中式缓存与分布式缓存有何区别? 它们应用场景是?
java目前常用的缓存:
Generic
JCache (JSR-107) (EhCache 3, Hazelcast, Infinispan, etc)
EhCache 2.x
Hazelcast
Infinispan
Couchbase
Redis
Caffeine
Guava (deprecated)
Simple
建议使用spring boot集成方式,可插拔,简单。
集中式缓存适用场景:
1、服务器集群部署。
2、数据高一致性(任何数据变化都能及时的被查询到)
分布式缓存适用场景:
系统需要缓存的数据量大
对数据的可用性较高的情况
需要横向扩展,从而达到缓存的容量无限的要求
面试官要求我研究一个Java缓存框架,哪个比较好
缓存框架有ehcache、redis、memcached
现在大公司用的比较多的是memcached和redis,这也是分布式系统开发中常用的缓存中间件
个人比较推荐用redis,因为redis对于可支持的数据类型比memcached要多,而且redis是一个可持久化的缓存框架,在使用的时候还可以尝试搭建redis集群环境。
如果你对redis深入研究,相信你的面试官会很乐意要你的。
关于java缓存比较和java缓存类的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。
发布于:2022-12-28,除非注明,否则均为
原创文章,转载请注明出处。