缓存之Encache简介

前言

前段时间在工作中用到了EnCache,其实工作里面EnCache和MemCache都有在用,趁机简单学习下,也跟大家一起分享下缓存相关知识。本篇主要简单介绍EnCache。

正题

一.简介

EhCache 是一个纯Java的进程内缓存框架,具有快速、精干等特点,是Hibernate中默认的CacheProvider。

Ehcache是一种广泛使用的开源Java分布式缓存。主要面向通用缓存,Java EE和轻量级容器。它具有内存和磁盘存储,缓存加载器,缓存扩展,缓存异常处理程序,一个gzip缓存servlet过滤器,支持REST和SOAP api等特点。

以下是官网解释:

Ehcache is an open source, standards-based cache for boosting performance, offloading your database, and simplifying scalability. It‘s the most widely-used Java-based
cache because it‘s robust, proven, and full-featured. Ehcache scales from in-process, with one or more nodes, all the way to mixed in-process/out-of-process configurations with terabyte-sized caches.

二.特点

主要的特性有:

1. 快速

2. 简单

3. 多种缓存策略

4. 缓存数据有两级:内存和磁盘,因此无需担心容量问题

5. 缓存数据会在虚拟机重启的过程中写入磁盘

6. 可以通过RMI、可插入API等方式进行分布式缓存

7. 具有缓存和缓存管理器的侦听接口

8. 支持多缓存管理器实例,以及一个实例的多个缓存区域

9. 提供Hibernate的缓存实现

三.简单使用

使用CacheManager 创建并管理Cache大概步骤为:

第一步:生成CacheManager对象

第二步:生成Cache对象

第三步:向Cache对象里添加由key,value组成的键值对的Element元素

第四步:关闭CacheManager。

创建CacheManager有4种方式:

方式一:使用默认配置文件创建

Ehcache有默认的配置文件ehcache.xml,里面有默认的配置和一个默认的缓存。

方式二:使用指定配置文件创建

方式三:从classpath中找寻配置文件并创建

方式四:通过输入流创建

时间: 2024-11-06 07:19:16

缓存之Encache简介的相关文章

分布式缓存BeIT Memcached简介

分布式缓存BeIT Memcached简介 或许你还没有用到过分布式缓存,在web集群的情况下,它可以很好的让一部分常用数据常驻服务器内存而不用担心各台web不同步.下面稍微介绍一下beitmemcached对于.net的支持,官方参考http://code.google.com/p/beitmemcached/ 一个完整的操作步骤:1.点击上面页面的downloads,把Memcached_1.2.5.zip 和BeITMemcached_source_2008_05_31.zip两个压缩包下

缓存之Memcached简介

前言 前篇简单较少了EnCache,本篇将介绍Memcached,之后还会将两者进行对比. 正题 一.简介 Memcached是高性能的分布式内存缓存服务器.一般的使用目的是,通过缓存数据库查询结果,减少数据库访问次数,以提高动态Web应用的速度.提高可扩展性. Memcached为key->value非关系型数据库,key为一般字串,值唯一.value除了php中的资源不能存,其它的数据都能存储(字符串.数值.数组.对象.布尔值.null.二进制<图片.视频>) 二.提速方法: 1.传

缓存数据库Redis 简介---&gt;安装

nosql介绍 NoSQL:一类新出现的数据库(not only sql) 泛指非关系型的数据库 不支持SQL语法 存储结构跟传统关系型数据库中的那种关系表完全不同,nosql中存储的数据都是KV形式 NoSQL的世界中没有一种通用的语言,每种nosql数据库都有自己的api和语法,以及擅长的业务场景 NoSQL中的产品种类相当多: Mongodb Redis Hbase hadoop Cassandra hadoop NoSQL和SQL数据库的比较: 适用场景不同:sql数据库适合用于关系特别

分布式缓存系统Memcached简介与实践

缘起: 在数据驱动的web开发中,经常要重复从数据库中取出相同的数据,这种重复极大的增加了数据库负载.缓存是解决这个问题的好办法.但是ASP.NET中的虽然已经可以实现对页面局部进行缓存,但还是不够灵活.此时Memcached或许是你想要的. Memcached是什么?Memcached是由Danga Interactive开发的,高性能的,分布式的内存对象缓存系统,用于在动态应用中减少数据库负载,提升访问速度. Memcached能缓存什么?通过在内存里维护一个统一的巨大的hash表,Memc

缓存数据库Redis 简介---&gt;搭建主从和集群

主从概念 ?个master可以拥有多个slave,?个slave?可以拥有多个slave,如此下去,形成了强?的多级服务器集群架构 master用来写数据,slave用来读数据,经统计:网站的读写比率是10:1 通过主从配置可以实现读写分离 主从配置 配置主 查看当前主机的ip地址 : ifconfig 修改etc/redis/redis.conf文件 :sudo vi redis.conf bind 192.168.26.128(这里的ip地址是上一步查看的本机ip) 重启redis服务 su

Memcached 分布式缓存实现原理

摘要 在高并发环境下,大量的读.写请求涌向数据库,此时磁盘IO将成为瓶颈,从而导致过高的响应延迟,因此缓存应运而生.无论是单机缓存还是分布式缓存都有其适应场景和优缺点,当今存在的缓存产品也是数不胜数,最常见的有redis和memcached等,既然是分布式,那么他们是怎么实现分布式的呢?本文主要介绍分布式缓存服务mencached的分布式实现原理. 缓存本质 计算机体系缓存 什么是缓存,我们先看看计算机体系结构中的存储体系,根据冯·诺依曼计算机体系结构模型,计算机分为五大部分:运算器.控制器.存

高性能内存对象缓存Memcached

高性能内存对象缓存Memcached Memcached简介 Memcached时一台开源的高性能分布式内存对象缓存系统,他将所有的数据都存储在内存中,因为在内存中会同意维护一张巨大而Hash表,所以支持任意存储类型的数据 1.学会安装Memcacahed服务 1.1安装Libevent Libevent是一款跨平台的事件处理接口的封装,可以兼容多个操作系统的事件访问.Memcached的安装依赖于Libevent,因此需要先完成Libevent的安装. 挂载源代码包 [[email prote

【转】MaBatis学习---源码分析MyBatis缓存原理

[原文]https://www.toutiao.com/i6594029178964673027/ 源码分析MyBatis缓存原理 1.简介 在 Web 应用中,缓存是必不可少的组件.通常我们都会用 Redis 或 memcached 等缓存中间件,拦截大量奔向数据库的请求,减轻数据库压力.作为一个重要的组件,MyBatis 自然也在内部提供了相应的支持.通过在框架层面增加缓存功能,可减轻数据库的压力,同时又可以提升查询速度,可谓一举两得.MyBatis 缓存结构由一级缓存和二级缓存构成,这两级

深入System.Web.Caching命名空间 教你Hold住缓存管理(一)

本文分三篇,从缓存所在命名空间System.Web.Caching开始,详细的介绍.NET框架提供的缓存类和操作方法.看完之后你将学会: 第一篇-如何实现简单的数据缓存 第二篇-缓存从文件中读取的数据,并通过文件依赖实现缓存数据的及时更新 第三篇-缓存数据库中的整张表,并通过数据库依赖实现缓存数据的及时更新 一,System .Web.Caching与缓存工作机制简介 System.Web.Caching是用来管理缓存的命名空间,其父级空间是System.Web,由此可见,缓存通常用于Web网站