需要添加的依赖
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>2.9.0</version>
</dependency>
Java连接redis
Jedis jedis = new Jedis("192.168.145.130", 6379);
jedis.auth("123456");//给redis设置密码之后要授权
String ping = jedis.ping();
System.out.println(ping);
Java操作redis
// jedis.select(0);//选择数据库
操作的数据类型
string(字符串)
hash(哈希)
list(列表)
set(集合)
zset(sorted set:有序集合)
几个重要的类型代码示例
//string (存储对象集合)
// jedis.set("hahaha", "taozinijiugezhu");
// System.out.println(jedis.get("hahaha"));
//hash(存储单个对象) (键相同值会被覆盖)
// jedis.hset("clazz", "cname", "11");
// jedis.hset("clazz", "cteacher", "晓");
// jedis.hset("clazz", "date", "Y2");
//
// jedis.hset("clazz", "cname", "11");
// jedis.hset("clazz", "cteacher", "严");
// jedis.hset("clazz", "date", "S1 S2");
//
// System.out.println(jedis.hkeys("student"));//student这一对象的键
// System.out.println(jedis.hvals("student"));//student这一对象所有的值
//list(存储string集合)
jedis.lpush("smile", "ww", "tz", "ljy");
System.out.println(jedis.lrange("smile", 1, 2));//取出集合的下标为多少多少的值
redis的一些知识点
redis持久化
rdb
aop
问题:
1、redis的数据何时消失
2、何时redis与mysql数据会同步一次
redis默认采取的是rdb持久方式
rdb持久化策略:
比如说redis存储了1000个key,当其中100key对应的值在60s发生了改变,那么久将redis与
mysql的数据进行同步一次。同步的机制,在redis.confg中进行设置
aof持久化策略
redis每改变内存中一条数据,就会将内存与mysql数据同步一次,并且记录日志。安全性更高,
数据不易丢失
一般都是 rdb与aof结合使用
redis集群(单机多节点集群,多台Linux机器集群)
主从模式
redis集群最少要三台主机(多台机器集群)
通常公司会至少使用6台(主从模式)
在不使用集群时:是将所有静态数据放到一台Linux主机的内存中。
当数据量过大,一台机器的内存不足。那么会采用多台机器进行分散存储,将多台机器进行集群。