Memcached 介绍及使用
Memcached简介
Memcached是一个高性能的分布式的内存对象缓存系统,通过在内存里维护一个统一的巨大的Hash 表,它能够用来存储各种格式的数据,其中包括数据库的检索结果。可以简单的将Memcached的作用理解为将数据调用到内存中,然后从内存中直接读取想要的数据内容,进而提高数据的读取速度。只要服务器的内存足够,在Memcached中保存的数据是没有限制的。
一般的使用目的是,通过缓存数据库查询结果,减少数据库访问次数,以提高动态Web应用的速度、 提高可扩展性。
Memcached 的几个常用方法
1、 add(String key, Object value)
add(String key, Object value, Integer expire)
add(String key, Object value, Date expire)
add(String key, Object value, Date expire, Integer expire1)
add 方法有以上四个重载方法
作用:往Memcached中放置key/value对
参数:key: 是唯一标记存储对象的键
value: 是往Memcached中存放的内容,可以是各种对象,也可以缓存自定义java bean。但必须是可序列化的java bean(implements Serializable即可)
expire: 是过期时间,Integer 的代表秒数。 Date 的是代表过期的截止日期。
用法:
add方法仅当存储空间中不存在键相同的数据时才保存成功,并返回true。当存储空间中存在键相同的数据时,不会保存成功并返回false。 不指定过期日期时value会在Memcached中永久保存(其实根据默认配置30天就失效了)。
2、 replace (String key, Object value)
replace (String key, Object value, Integer expire)
replace (String key, Object value, Date expire)
replace (String key, Object value, Date expire, Integer expire1)
replace方法有以上四个重载方法
作用:替换Memcached中已经存在的key值所对应的value值
参数:key: 同add
value: 同add
expire: 同add
用法:
replace 仅当存储空间中存在键相同的数据时才保存,当存储空间中不存在键相同的数据时,不会保存成功。 不指定过期日期时value会在Memcached中永久保存。
3、 set (String key, Object value)
set (String key, Object value, Integer expire)
set (String key, Object value, Date expire)
set (String key, Object value, Date expire, Integer expire1)
set方法有以上四个重载方法
作用:往Memcached中存放key/value键值对se与add和replace不同,无论何时都保存数据。
参数:key: 同add
value: 同add
expire: 同add
用法:
set 与add和replace不同,无论何时都保存数据
4、get(String key) :从Memcached中取得key值对应的value值
5、delete(String key) :从Memcached中删除key值对应的value值
add 仅当存储空间中不存在键相同的数据时才保存
replace 仅当存储空间中存在键相同的数据时才保存
set 与add和replace不同,无论何时都保存