缓存优化
小于 1 分钟
00.问题说明
- 用户数量多,系统访问量大。
- 频繁访问数据库,系统性能下降,用户体验差。
01.环境搭建
虚拟机安装redis
docker pull redis:7.0.8
docker run --name some-redis -d redis:7.0.8
# 下载配置文件
cd /home/redis/conf
wget http://download.redis.io/redis-stable/redis.conf
# 修改配置文件,添加密码
requirepass root
docker run -p 6379:6379 --name redis -v /home/redis/conf/redis.conf:/etc/redis/redis.conf -v /home/redis/data:/data -d redis:7.0.8 redis-server /etc/redis/redis.conf --appendonly yes
项目配置
依赖导入:
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> </dependency>
修改application.yml:
spring: redis: host: 192.168.1.222 port: 6379 password: root database: 0
序列化配置类:
@Configuration public class RedisConfig extends CachingConfigurerSupport { @Bean public RedisTemplate<Object, Object> redisTemplate(RedisConnectionFactory connectionFactory) { RedisTemplate<Object, Object> redisTemplate = new RedisTemplate<>(); redisTemplate.setConnectionFactory(connectionFactory); // 设置序列化的方式 redisTemplate.setKeySerializer(RedisSerializer.string()); redisTemplate.setHashKeySerializer(RedisSerializer.string()); redisTemplate.setValueSerializer(RedisSerializer.json()); redisTemplate.setHashValueSerializer(RedisSerializer.string()); return redisTemplate; } }