一、Redis
Redis介绍
Redis 是一个高性能的开源的、C语言写的Nosql(非关系型数据库),数据保存在内存中。并且要持久化到磁盘
特点:因为数据保存在内存,存取速度快,并发能力强
存储类型:包括string(字符串)、list(列表)、set(集合)、 zset(sorted set --有序集合)和hash(哈希类型 - map)。
支持多种客户端:它提供了Java,C/C++,C#,PHP,JavaScript等客户端,使用很方便
集群:Redis支持集群(主从同步)。数据可以主服务器向任意数量从的从服务器上同步,从服务器可以是关联其他从服务器的主服务器。
持久化:两种A0F和RDB ,启动的时候 会检查redis.conf中的 appendonly 是否为yes ,每操作一次 可以将数据保存在硬盘的文件中 , RDB:是以时间~次数 来操作的,比如30秒~操作10次。记录一次
二、使用步骤
1.安装
Redis 的官方下载站是 http://redis.io/download,可以去上面下载最新的安装程序下来:
windows下的安装和使用
启动redis服务(带配置文件启动,和不带配置文件启动)
2导入依赖
代码如下(示例):
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
3 配置yml
redis: database: 0 host: 127.0.0.1 port: 6379 password: 123456 jedis: pool: max-wait: 2000ms min-idle: 2 max-idle: 8
把查询的数据放进redis里面
@Override
public List<CourseType> treeData() {
List<CourseType> result = new ArrayList<>();
//加上redis做课程的缓存
Object o = redisTemplate.opsForValue().get(ConstanceCourseType.REDIS_CONSTANCE);
if(o!=null){
System.out.println("缓存里拿课程的分层缓存");
result=(List<CourseType>)o;//强转
}else {
result= treeDataLoop();//缓存里面没有就去查询数据库
System.out.println("数据库查询课程层级结构");
redisTemplate.opsForValue().set(ConstanceCourseType.REDIS_CONSTANCE,result);
}
return result;
}
redis的可视化工具推荐 Another Redis Desktop Manager
总结
redis的下载之后解压即可使用,默认是rdb文件配置。。可以手动redis.windows.conf修改文件 appendonly yes 该为两种模式共有