当前位置: 首页 > 科技观察

Java中常用的缓存框架

时间:2023-03-12 01:18:16 科技观察

0x01:EhcacheEhcache是??一个用Java实现的开源分布式缓存框架。EhCache可以有效降低数据库的负载,让数据存储在不同服务器的内存中,需要数据的时候可以快速调取。使用权。同时EhCache的扩展非常简单,官方的Cache配置方法也很多。可以声明配置,在xml中配置,在程序中配置,或者在调用构造函数时传入不同的参数。官网http://ehcache.org/Ehcache具有以下特点:访问速度非常快,性能非常好。支持应用多种缓存策略。分层缓存,用户可以指定哪些数据缓存在硬盘中,哪些数据缓存在内存中。分布式缓存可以通过RMI、可插拔API等实现。缓存和缓存管理器的监听接口。支持多个缓存管理器实例,以及一个实例的多个缓存区域。Hibernate的缓存实现是默认提供的。0x02:CacheonixCacheonix也是一个基于Java的分布式集群缓存系统,同样可以方便分布式缓存的部署。Cacheonix作为一个开源的分布式缓存框架,能够满足中型企业的系统架构,对提升系统性能有很大的作用。官网http://www.cacheonix.com/Cacheonix具有以下特点可靠的分布式Java缓存通过复制实现高可用性支持通用缓存API可与ORM框架集成使用数据分区实现负载均衡支持非组播网络高性能计算快速本地Java缓存分布式锁机制0x03:JBossCacheJBossCache是??一个基于Java的事务处理缓存系统,它的目标是构建一个基于Java框架的集群解决方案,它可以是一个服务器应用程序也可以是一个JavaSE应用程序。官网http://jbosscache.jboss.org/JBossCache具有以下特点集群高可用JBossCache是??一个可复制的Cache,它的状态始终与集群中的其他服务器保持同步。这使得存储在JBossCache中的任何状态都可以恢复,即使服务器崩溃或重新启动也是如此。集群缓存消除瓶颈JBossCache旨在缓存频繁访问的Java对象,以动态提高应用程序性能。这使得消除数据访问瓶颈(如数据库连接)变得更加容易。JBossCache实例关注远程缓存的更新和同步。企业级JBossCache是一种先进的企业级数据网格解决方案,提供事务处理、回收和缓存加载等功能。许可证JBossCache基于LGPL许可证并且是100%开源的。0x04:OSCacheOSCache是??一个广泛使用的高性能J2EE缓存框架,OSCache可以作为任何Java应用程序的通用缓存解决方案。官网http://www.opensymphony.com/oscache/OSCache有以下特点Cachinganyobject。可以无限制缓存部分jsp页面或HTTP请求,可以缓存任何java对象。有一个全面的API。OSCacheAPI提供了一个综合程序来控制所有OSCache功能。永久缓存。缓存可以随意写入磁盘,从而允许创建昂贵的数据来维护缓存,甚至允许应用程序重启。支持集群。集群缓存数据可以单独参数化,无需修改代码Expirationofcacherecords-。可以很大程度上控制缓存对象的过期时间,包括可插拔的刷新策略(如果不需要默认性能)0x05:MemcachedMemcached是一种基于内存的key-value存储,用于存储小块的任意数据(字符串,目的)。此数据可以是数据库调用、API调用或页面呈现的结果。Memcached简单而强大。其简洁的设计便于快速开发,降低开发难度,解决了大数据缓存的诸多问题。其API与大多数流行的开发语言兼容。本质上,它是一个紧凑的键值存储系统。官网:http://memcached.org/Memcached具有以下特点基于Libevent的事件处理memcached不相互通信分布式协议简单内置内存存储方式0x06:J2CacheJ2Cache目前是一个二级缓存框架OSChina使用。一级缓存使用Ehcache,二级缓存使用Redis。L1的目标是减少对L2的读取次数,因为大量的缓存读取会导致L2网络成为整个系统的瓶颈。该缓存框架主要用于集群环境。Standalone也可以用来避免应用重启导致Ehcache缓存数据丢失。文档https://www.oschina.net/doc/652另外J2Cache的代码仓库在码云上,大家可以搜索一下。更详细的介绍https://my.oschina.net/javayou/blog/19313810x07:JetCacheJetCache是??阿里开源的缓存框架。JetCache是??一个基于java的缓存系统包,提供了统一的API和注解来简化缓存的使用。JetCache提供了比SpringCache更强大的注解,可以原生支持TTL、二级缓存、分布式自动刷新,并提供了Cache接口用于手动缓存操作。目前有四种实现,RedisCache、TairCache、CaffeineCache和一个简单的LinkedHashMapCache。添加新的实现也非常简单。官网https://github.com/alibaba/jetcacheJetCache有以下特点。通过统一的API访问Cache系统。通过注解实现声明式方法缓存。通过注解创建和配置Cache实例。自动统计所有Cache实例和方法缓存的Keys。生成策略和值序列化策略可配置分布式缓存自动刷新,分布式锁异步CacheAPISpringBoot支持