项目经验
bear_upup
这个作者很懒,什么都没留下…
展开
-
Redis缓存穿透、缓存击穿、缓存雪崩区别和解决方案
1. 缓存穿透**缓存穿透:**用户不断的向服务器发送请求查询不存在的数据(缓存中和数据库中均不存在),每次查询数据的时候服务器都会查询数据库,导致服务器压力增大。1.1 产生原因redis查询不到数据库。出现很多非正常URL访问。1.2 解决方案:**对空值缓存:**对查询结果为空的请求也更新缓存,并设置一个短时间的过期时间,这样下次查询就从缓存中读取结果,降低了数据库的读取压力。**设置可访问的名单(白名单):**禁止发送大量无意义请求的IP访问。**采用布隆过滤器:**对原创 2022-03-01 21:38:00 · 504 阅读 · 0 评论 -
springboot项目配置多数据源
1、引入需要的pom依赖 <dependency> <groupId>com.baomidou</groupId> <artifactId>dynamic-datasource-spring-boot-starter</artifactId> <version>2.5.6</version> </dependency>原创 2022-02-26 15:40:15 · 159 阅读 · 0 评论 -
使用@Retryable进行重处理
1、增加spring-retry依赖:<retry.version>1.2.5.RELEASE</retry.version><!--retry--><dependency> <groupId>org.springframework.retry</groupId> <artifactId>spring-retry</artifactId> <version>${r...原创 2022-02-22 21:48:53 · 696 阅读 · 0 评论 -
统一异常处理类
每个项目都应该定义一个异常抛出的机制。模板类:public class customExceptionHandle extends RuntimeException { public customExceptionHandle(String message) { super(message); } public customExceptionHandle(String message, Throwable cause) { super(m原创 2022-02-08 13:47:18 · 346 阅读 · 0 评论