mirror of
https://gitee.com/durcframework/SOP.git
synced 2025-08-11 21:57:56 +08:00
新增路由监控功能、优化负载均衡策略、新增拦截器接口
This commit is contained in:
@@ -0,0 +1,32 @@
|
||||
package com.gitee.sop.gateway.interceptor;
|
||||
|
||||
import com.gitee.sop.gatewaycommon.interceptor.RouteInterceptor;
|
||||
import com.gitee.sop.gatewaycommon.interceptor.RouteInterceptorContext;
|
||||
import com.gitee.sop.gatewaycommon.param.ApiParam;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
/**
|
||||
* 演示拦截器
|
||||
*
|
||||
* @author tanghc
|
||||
*/
|
||||
@Component
|
||||
public class MyRouteInterceptor implements RouteInterceptor {
|
||||
|
||||
@Override
|
||||
public void preRoute(RouteInterceptorContext context) {
|
||||
ApiParam apiParam = context.getApiParam();
|
||||
System.out.println("请求接口:" + apiParam.fetchNameVersion());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void afterRoute(RouteInterceptorContext context) {
|
||||
System.out.println("请求成功,微服务返回结果:" + context.getServiceResult());
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getOrder() {
|
||||
return 0;
|
||||
}
|
||||
|
||||
}
|
@@ -1,6 +1,7 @@
|
||||
package com.gitee.sop.gateway.manager;
|
||||
|
||||
import com.gitee.fastmybatis.core.query.Query;
|
||||
import com.gitee.sop.gateway.entity.ConfigLimit;
|
||||
import com.gitee.sop.gateway.mapper.ConfigLimitMapper;
|
||||
import com.gitee.sop.gatewaycommon.bean.ChannelMsg;
|
||||
import com.gitee.sop.gatewaycommon.bean.ConfigLimitDto;
|
||||
@@ -37,7 +38,7 @@ public class DbLimitConfigManager extends DefaultLimitConfigManager {
|
||||
|
||||
}
|
||||
|
||||
protected void putVal(Object object) {
|
||||
protected void putVal(ConfigLimit object) {
|
||||
ConfigLimitDto configLimitDto = new ConfigLimitDto();
|
||||
MyBeanUtil.copyPropertiesIgnoreNull(object, configLimitDto);
|
||||
this.update(configLimitDto);
|
||||
|
@@ -42,7 +42,7 @@ public class DbRouteConfigManager extends DefaultRouteConfigManager {
|
||||
|
||||
@Override
|
||||
public void process(ChannelMsg channelMsg) {
|
||||
final RouteConfig routeConfig = channelMsg.toObject( RouteConfig.class);
|
||||
final RouteConfig routeConfig = channelMsg.toObject(RouteConfig.class);
|
||||
switch (channelMsg.getOperation()) {
|
||||
case "reload":
|
||||
log.info("重新加载路由配置信息,routeConfigDto:{}", routeConfig);
|
||||
|
Reference in New Issue
Block a user