Hibernate-Redis集成
介绍
在Spring Boot 中,以JPA为ORM框架的微服务,默认是二级缓存是关闭的。因为在分布式集群架构下,本地的二级缓存必然会带来多个微服务实例缓存不一致问题。将二级缓存移交给第三方中间件可以很好的解决缓存不一致问题。并且Redis一款高性能的K-V存储中间件,在保证缓存一致性的同时,还能提供高性能,高可用的特性。本篇文章就是基于开源框架hibernate-redisGitHub地址,将redis集成到微服务中作为JPA中作为二级缓存存储中间件。
###集成
在hibernate-redisConfiguration官方给很多种集成方式,针对于不同redis模式(redis单体模式,主从模式,哨兵模式,集群模式)给出了不同配置说明,本文为以最简单redis单体模式,将redis集成到服务中。
0. redis安装启动
将redis安装并启动,本文redis的地址为:127.0.0.1:6379
1. 引入pom
com.github.debop
hibernate-redis
2.4.0
org.redisson
redisson
2.5.1
de.ruedigermoeller
fst
2.48
org.xerial.snappy
snappy-java
1.1.7.3
2 . 配置
A . 在 src/main/resources/application.yml 配置数据源和开启二级缓存
spring:
application:
name: jps-redis-demo
datasource:
username: root
password: *****
url: jdbc:mysql://localhost:3306/tenant-center?&useUnicode=true&characterEncoding=UTF-8&useSSL=false
driver-class-name: com.mysql.cj.jdbc.Driver
type: com.alibaba.druid.pool.DruidDataSource
jpa:
hibernate:
naming:
physical-strategy: org.springframework.boot.orm.jpa.hiberna