Merge branch 'master-jdk21' of https://gitee.com/zhijiantianya/ruoyi-vue-pro
# Conflicts: # yudao-dependencies/pom.xml # yudao-framework/yudao-spring-boot-starter-web/src/main/java/cn/iocoder/yudao/framework/web/core/handler/GlobalExceptionHandler.java
This commit is contained in:
commit
cc9b2e86b6
@ -35,12 +35,6 @@
|
|||||||
<artifactId>lock4j-redisson-spring-boot-starter</artifactId>
|
<artifactId>lock4j-redisson-spring-boot-starter</artifactId>
|
||||||
<optional>true</optional>
|
<optional>true</optional>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<dependency>
|
|
||||||
<groupId>io.github.resilience4j</groupId>
|
|
||||||
<artifactId>resilience4j-spring-boot2</artifactId>
|
|
||||||
<optional>true</optional>
|
|
||||||
</dependency>
|
|
||||||
</dependencies>
|
</dependencies>
|
||||||
|
|
||||||
</project>
|
</project>
|
||||||
|
@ -1,9 +0,0 @@
|
|||||||
/**
|
|
||||||
* 使用 Resilience4j 组件,实现服务保障,包括:
|
|
||||||
* 1. 熔断器
|
|
||||||
* 2. 限流器
|
|
||||||
* 3. 舱壁隔离
|
|
||||||
* 4. 重试
|
|
||||||
* 5. 限时器
|
|
||||||
*/
|
|
||||||
package cn.iocoder.yudao.framework.resilience4j;
|
|
@ -1 +0,0 @@
|
|||||||
<https://www.iocoder.cn/Spring-Boot/Resilience4j/?yudao>
|
|
@ -181,14 +181,6 @@ public class GlobalExceptionHandler {
|
|||||||
return CommonResult.error(METHOD_NOT_ALLOWED.getCode(), String.format("请求方法不正确:%s", ex.getMessage()));
|
return CommonResult.error(METHOD_NOT_ALLOWED.getCode(), String.format("请求方法不正确:%s", ex.getMessage()));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* 处理 Resilience4j 限流抛出的异常
|
|
||||||
*/
|
|
||||||
public CommonResult<?> requestNotPermittedExceptionHandler(HttpServletRequest req, Throwable ex) {
|
|
||||||
log.warn("[requestNotPermittedExceptionHandler][url({}) 访问过于频繁]", req.getRequestURL(), ex);
|
|
||||||
return CommonResult.error(TOO_MANY_REQUESTS);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 处理 Spring Security 权限不足的异常
|
* 处理 Spring Security 权限不足的异常
|
||||||
*
|
*
|
||||||
@ -223,12 +215,7 @@ public class GlobalExceptionHandler {
|
|||||||
return tableNotExistsResult;
|
return tableNotExistsResult;
|
||||||
}
|
}
|
||||||
|
|
||||||
// 情况二:部分特殊的库的处理
|
// 情况二:处理异常
|
||||||
if (Objects.equals("io.github.resilience4j.ratelimiter.RequestNotPermitted", ex.getClass().getName())) {
|
|
||||||
return requestNotPermittedExceptionHandler(req, ex);
|
|
||||||
}
|
|
||||||
|
|
||||||
// 情况三:处理异常
|
|
||||||
log.error("[defaultExceptionHandler]", ex);
|
log.error("[defaultExceptionHandler]", ex);
|
||||||
// 插入异常日志
|
// 插入异常日志
|
||||||
this.createExceptionLog(req, ex);
|
this.createExceptionLog(req, ex);
|
||||||
|
@ -32,8 +32,6 @@ mybatis-plus:
|
|||||||
|
|
||||||
# Lock4j 配置项(单元测试,禁用 Lock4j)
|
# Lock4j 配置项(单元测试,禁用 Lock4j)
|
||||||
|
|
||||||
# Resilience4j 配置项
|
|
||||||
|
|
||||||
--- #################### 监控相关配置 ####################
|
--- #################### 监控相关配置 ####################
|
||||||
|
|
||||||
--- #################### 芋道相关配置 ####################
|
--- #################### 芋道相关配置 ####################
|
||||||
|
@ -38,8 +38,6 @@ mybatis-plus:
|
|||||||
|
|
||||||
# Lock4j 配置项(单元测试,禁用 Lock4j)
|
# Lock4j 配置项(单元测试,禁用 Lock4j)
|
||||||
|
|
||||||
# Resilience4j 配置项
|
|
||||||
|
|
||||||
--- #################### 监控相关配置 ####################
|
--- #################### 监控相关配置 ####################
|
||||||
|
|
||||||
--- #################### 芋道相关配置 ####################
|
--- #################### 芋道相关配置 ####################
|
||||||
|
@ -38,8 +38,6 @@ mybatis-plus:
|
|||||||
|
|
||||||
# Lock4j 配置项(单元测试,禁用 Lock4j)
|
# Lock4j 配置项(单元测试,禁用 Lock4j)
|
||||||
|
|
||||||
# Resilience4j 配置项
|
|
||||||
|
|
||||||
--- #################### 监控相关配置 ####################
|
--- #################### 监控相关配置 ####################
|
||||||
|
|
||||||
--- #################### 芋道相关配置 ####################
|
--- #################### 芋道相关配置 ####################
|
||||||
|
@ -38,8 +38,6 @@ mybatis-plus:
|
|||||||
|
|
||||||
# Lock4j 配置项(单元测试,禁用 Lock4j)
|
# Lock4j 配置项(单元测试,禁用 Lock4j)
|
||||||
|
|
||||||
# Resilience4j 配置项
|
|
||||||
|
|
||||||
--- #################### 监控相关配置 ####################
|
--- #################### 监控相关配置 ####################
|
||||||
|
|
||||||
--- #################### 芋道相关配置 ####################
|
--- #################### 芋道相关配置 ####################
|
||||||
|
@ -37,8 +37,6 @@ mybatis:
|
|||||||
|
|
||||||
# Lock4j 配置项(单元测试,禁用 Lock4j)
|
# Lock4j 配置项(单元测试,禁用 Lock4j)
|
||||||
|
|
||||||
# Resilience4j 配置项
|
|
||||||
|
|
||||||
--- #################### 监控相关配置 ####################
|
--- #################### 监控相关配置 ####################
|
||||||
|
|
||||||
--- #################### 芋道相关配置 ####################
|
--- #################### 芋道相关配置 ####################
|
||||||
|
@ -37,8 +37,6 @@ mybatis:
|
|||||||
|
|
||||||
# Lock4j 配置项(单元测试,禁用 Lock4j)
|
# Lock4j 配置项(单元测试,禁用 Lock4j)
|
||||||
|
|
||||||
# Resilience4j 配置项
|
|
||||||
|
|
||||||
--- #################### 监控相关配置 ####################
|
--- #################### 监控相关配置 ####################
|
||||||
|
|
||||||
--- #################### 芋道相关配置 ####################
|
--- #################### 芋道相关配置 ####################
|
||||||
|
@ -37,8 +37,6 @@ mybatis:
|
|||||||
|
|
||||||
# Lock4j 配置项(单元测试,禁用 Lock4j)
|
# Lock4j 配置项(单元测试,禁用 Lock4j)
|
||||||
|
|
||||||
# Resilience4j 配置项
|
|
||||||
|
|
||||||
--- #################### 监控相关配置 ####################
|
--- #################### 监控相关配置 ####################
|
||||||
|
|
||||||
--- #################### 芋道相关配置 ####################
|
--- #################### 芋道相关配置 ####################
|
||||||
|
@ -70,16 +70,6 @@ mybatis-plus:
|
|||||||
|
|
||||||
# Lock4j 配置项(单元测试,禁用 Lock4j)
|
# Lock4j 配置项(单元测试,禁用 Lock4j)
|
||||||
|
|
||||||
# Resilience4j 配置项
|
|
||||||
resilience4j:
|
|
||||||
ratelimiter:
|
|
||||||
instances:
|
|
||||||
backendA:
|
|
||||||
limit-for-period: 1 # 每个周期内,允许的请求数。默认为 50
|
|
||||||
limit-refresh-period: 60s # 每个周期的时长,单位:微秒。默认为 500
|
|
||||||
timeout-duration: 1s # 被限流时,阻塞等待的时长,单位:微秒。默认为 5s
|
|
||||||
register-health-indicator: true # 是否注册到健康监测
|
|
||||||
|
|
||||||
--- #################### 监控相关配置 ####################
|
--- #################### 监控相关配置 ####################
|
||||||
|
|
||||||
--- #################### 芋道相关配置 ####################
|
--- #################### 芋道相关配置 ####################
|
||||||
|
@ -37,8 +37,6 @@ mybatis:
|
|||||||
|
|
||||||
# Lock4j 配置项(单元测试,禁用 Lock4j)
|
# Lock4j 配置项(单元测试,禁用 Lock4j)
|
||||||
|
|
||||||
# Resilience4j 配置项
|
|
||||||
|
|
||||||
--- #################### 监控相关配置 ####################
|
--- #################### 监控相关配置 ####################
|
||||||
|
|
||||||
--- #################### 芋道相关配置 ####################
|
--- #################### 芋道相关配置 ####################
|
||||||
|
@ -38,8 +38,6 @@ mybatis:
|
|||||||
|
|
||||||
# Lock4j 配置项(单元测试,禁用 Lock4j)
|
# Lock4j 配置项(单元测试,禁用 Lock4j)
|
||||||
|
|
||||||
# Resilience4j 配置项
|
|
||||||
|
|
||||||
--- #################### 监控相关配置 ####################
|
--- #################### 监控相关配置 ####################
|
||||||
|
|
||||||
--- #################### 芋道相关配置 ####################
|
--- #################### 芋道相关配置 ####################
|
||||||
|
@ -74,16 +74,6 @@ mybatis:
|
|||||||
|
|
||||||
# Lock4j 配置项(单元测试,禁用 Lock4j)
|
# Lock4j 配置项(单元测试,禁用 Lock4j)
|
||||||
|
|
||||||
# Resilience4j 配置项
|
|
||||||
resilience4j:
|
|
||||||
ratelimiter:
|
|
||||||
instances:
|
|
||||||
backendA:
|
|
||||||
limit-for-period: 1 # 每个周期内,允许的请求数。默认为 50
|
|
||||||
limit-refresh-period: 60s # 每个周期的时长,单位:微秒。默认为 500
|
|
||||||
timeout-duration: 1s # 被限流时,阻塞等待的时长,单位:微秒。默认为 5s
|
|
||||||
register-health-indicator: true # 是否注册到健康监测
|
|
||||||
|
|
||||||
--- #################### 监控相关配置 ####################
|
--- #################### 监控相关配置 ####################
|
||||||
|
|
||||||
--- #################### 芋道相关配置 ####################
|
--- #################### 芋道相关配置 ####################
|
||||||
|
@ -38,8 +38,6 @@ mybatis:
|
|||||||
|
|
||||||
# Lock4j 配置项(单元测试,禁用 Lock4j)
|
# Lock4j 配置项(单元测试,禁用 Lock4j)
|
||||||
|
|
||||||
# Resilience4j 配置项
|
|
||||||
|
|
||||||
--- #################### 监控相关配置 ####################
|
--- #################### 监控相关配置 ####################
|
||||||
|
|
||||||
--- #################### 芋道相关配置 ####################
|
--- #################### 芋道相关配置 ####################
|
||||||
|
@ -117,16 +117,6 @@ lock4j:
|
|||||||
acquire-timeout: 3000 # 获取分布式锁超时时间,默认为 3000 毫秒
|
acquire-timeout: 3000 # 获取分布式锁超时时间,默认为 3000 毫秒
|
||||||
expire: 30000 # 分布式锁的超时时间,默认为 30 毫秒
|
expire: 30000 # 分布式锁的超时时间,默认为 30 毫秒
|
||||||
|
|
||||||
# Resilience4j 配置项
|
|
||||||
resilience4j:
|
|
||||||
ratelimiter:
|
|
||||||
instances:
|
|
||||||
backendA:
|
|
||||||
limit-for-period: 1 # 每个周期内,允许的请求数。默认为 50
|
|
||||||
limit-refresh-period: 60s # 每个周期的时长,单位:微秒。默认为 500
|
|
||||||
timeout-duration: 1s # 被限流时,阻塞等待的时长,单位:微秒。默认为 5s
|
|
||||||
register-health-indicator: true # 是否注册到健康监测
|
|
||||||
|
|
||||||
--- #################### 监控相关配置 ####################
|
--- #################### 监控相关配置 ####################
|
||||||
|
|
||||||
# Actuator 监控端点的配置项
|
# Actuator 监控端点的配置项
|
||||||
|
@ -135,16 +135,6 @@ lock4j:
|
|||||||
acquire-timeout: 3000 # 获取分布式锁超时时间,默认为 3000 毫秒
|
acquire-timeout: 3000 # 获取分布式锁超时时间,默认为 3000 毫秒
|
||||||
expire: 30000 # 分布式锁的超时时间,默认为 30 毫秒
|
expire: 30000 # 分布式锁的超时时间,默认为 30 毫秒
|
||||||
|
|
||||||
# Resilience4j 配置项
|
|
||||||
resilience4j:
|
|
||||||
ratelimiter:
|
|
||||||
instances:
|
|
||||||
backendA:
|
|
||||||
limit-for-period: 1 # 每个周期内,允许的请求数。默认为 50
|
|
||||||
limit-refresh-period: 60s # 每个周期的时长,单位:微秒。默认为 500
|
|
||||||
timeout-duration: 1s # 被限流时,阻塞等待的时长,单位:微秒。默认为 5s
|
|
||||||
register-health-indicator: true # 是否注册到健康监测
|
|
||||||
|
|
||||||
--- #################### 监控相关配置 ####################
|
--- #################### 监控相关配置 ####################
|
||||||
|
|
||||||
# Actuator 监控端点的配置项
|
# Actuator 监控端点的配置项
|
||||||
|
Loading…
Reference in New Issue
Block a user