Redis(Remote Dictionary Server)是一个基于内存的 Key-Value 结构化存储的存储系统。在实际生产环境中可以将其作为数据库、缓存和消息中间件来使用。
由于 Redis 是基于内存的、采用 Key-Value 结构化存储的 NoSQL 数据库,加上其底层采用单线程和多路 I/O 复用模型,所以 Redis 的查询速度很快。根据 Redis 官方提供的数据,它可以实现每秒查询的次数达到10万次,即 QPS 为100000+,这在某种程度上足以满足大部分的高并发请求。
三个特点:

1、热点数据的存储与展示
2、最近访问的数据
3、并发访问
4、排名
除此之外,Redis还有诸多应用场景,比如消息队列、分布式锁等。
常用的几个命令:
- 1)查看Redis缓存中存储的所有key
- keys*
-
- 2)在缓存中创建一个key,设置其名字为redis:order:no:10011(按照自己的习惯取名即可,但是建议最好具有某种含义),设置其值为10011,命令为:
- set redis:order:no:1001110011。
-
- 3)查看缓存中指定 key 的取值,如获取刚刚创建的key:redis:order:no:10011的取值,命令为:
- get redis:order:no:10011
-
- 4) 删除缓存中指定的 key, 如删除 key: redis:order:no:10011, 命令为 :
- del redis:order:no:10011。
- 执行命令之后,如果返回值为1,则代表删除成功。
-
- exists key 判断某个key是否存在
- type key 查看你的key是什么类型
-
- expire key 10 10秒钟:为给定的key设置过期时间
- ttl key 查看还有多少秒过期,-1表示永不过期,-2表示已过期
-
-
-
- select 命令切换数据库
- dbsize 查看当前数据库的key的数量
- flushdb 清空当前库
- flushall 通杀全部库
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.core.env.Environment;
import org.springframework.data.redis.connection.RedisConnectionFactory;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.data.redis.serializer.JdkSerializationRedis
Serializer;
import org.springframework.data.redis.serializer.StringRedisSerializer;
//通用化配置
@Configuration
public class CommonConfig {
//Redis连接工厂
@Autowired
private RedisConnectionFactory redisConnectionFactory;
//缓存操作组件RedisTemplate的自定义配置
@Bean
public RedisTemplate redisTemplate(){
//定义RedisTemplate实例
RedisTemplate redisTemplate=new RedisTemplate
();
//设置Redis的连接工厂
redisTemplate.setConnectionFactory(redisConnectionFactory);
//TODO:指定大Key序列化策略为String序列化,Value为JDK自带的序列化策略
redisTemplate.setKeySerializer(new StringRedisSerializer());
redisTemplate.setValueSerializer(new JdkSerializationRedisSerializer());
//TODO:指定hashKey序列化策略为String序列化-针对hash散列存储
redisTemplate.setHashKeySerializer(new StringRedisSerializer());
return redisTemplate;
}
//缓存操作组件StringRedisTemplate
@Bean
public StringRedisTemplate stringRedisTemplate(){
//采用默认配置即可-后续有自定义配置时则在此处添加即可
StringRedisTemplate stringRedisTemplate=new StringRedisTemplate();
stringRedisTemplate.setConnectionFactory(redisConnectionFactory);
return stringRedisTemplate;
}
}