Linux CentOS 6.x 开发配置文档 8 - Redis
RE mote DI ctionary S erver,能够直接理解为远程字典服务,也就是基于Key-Value模式Memcached+Database Persistence。
Redis 是一个开源的key-value内存数据库。支持的数据类型有:String,list,set,sorted set 和 hash
Redis 命令参考:
http://redisdoc.com
1,下载:wget
http://download.redis.io/releases/redis-2.8.19.tar.gz
2,解压:tar zxvf redis-2.8.19.tar.gz
3,编译:make
4,安装:make install
5,打开Redis的服务器:/home/Redis/src/redis-server
6,打开Redis的客户端:/home/Redis/src/redis-cli(之后直接使用
: redis
-cli
,有中文的话,使用 :
redis
-cli
--raw
)
7,打开Redis性能测试工具:redis-benchmark
8,测试放数据:set a 123
9,测试取数据:get a,若是出现“123”,则说明成功了! (在线测试:
http://try.redis.io
)
10,关闭Redis服务:redis-cli shutdown
--redis服务关闭后,缓存数据会自动dump到硬盘上,硬盘地址为redis.conf中的配置项dbfilename dump.rdb所设定
--强制备份数据到磁盘:redis-cli save 或者 redis-cli -p 6380 save(指定端口)
11,服务自启动
cp redis.conf /etc
vim /etc/redis.conf,将守护进程:daemonize
no
改为:daemonize
yes
vim /etc/rc.local,添加:/home/Redis/src/redis-server /etc/redis.conf
Java 客户端须要Jedis(Jedis 是 Redis 官方首选的 Java 客户端开发包)
https://github.com/xetorthio/jedis/downloads
Redis 操做:
1,简单的set和get:
set a 123
get a
显示:123
2,追加
append a 456
get a
显示:123456
2.1,加 1 操做
set age 18
incr age
显示:19
3,set
mset a1 1 a2 2 a3 3
mget a1 a2 a3
显示:
1) "1"
2) "2"
3) "3"
4,map ========================TODO==================
Map
<String, String> map =
new
HashMap<String, String>
(); map.put(
"name", "fujianchao"
); map.put(
"password", "123"
); map.put(
"age", "12"
);
//
存入一个map
jedis.hmset("user"
, map);
//
map key的个数
System.out.println("map的key的个数" + jedis.hlen("user"
));
//
map key
System.out.println("map的key" + jedis.hkeys("user"
));
//
map value
System.out.println("map的value" + jedis.hvals("user"
));
//
(String key, String... fields)返回值是一个list
List<String> list = jedis.hmget("user", "age", "name"
); System.out.println(
"redis中key的各个 fields值:" + jedis.hmget("user", "age", "name") +
list.size());
//
删除map中的某一个键 的值 password
//
固然 (key, fields) 也能够是多个fields
jedis.hdel("user", "age"
); System.out.println(
"删除后map的key" + jedis.hkeys("user"
));
5,List
lpush list a
lpush list aa
lpush list aaa
lpush list aaaa
获取方法:(根据索引获取,-1 所有;)
lrange list 0 -1,显示:
1) "aaaaa"
2) "aaaa"
3) "aaa"
4) "aa"
5) "a"
获取List中的第1个:lrange list 0 0
获取List中的第2个:lrange list 2 2
获取List中的第2个和第3个:lrange list 1 2
获取栈顶:lpop list
删除:del list
6,
显示:
7,
显示:
8,
显示:
9,
显示:
public static void main(String[] args) {
Jedis jedis = new Jedis("127.0.0.1");
System.out.println(jedis.get("key"));
// 添加
jedis.set("a", "啊");
System.out.println(jedis.get("a"));
// 删除
jedis.del("a");
System.out.println(jedis.get("a"));
}
欢迎关注本站公众号,获取更多信息