网关配置模版
2023-10-26 09:10:47 6 举报
代码跟读,流程图,类图,泳道图
作者其他创作
大纲/内容
ProcessFlowConfig(处理流程)
判断监听事件 delete /change
ProtocolContainerConfig
rule
将ApolloConfig 转化为 GateWayBaseConfig
策略与引擎
1:1
GovResourceConfig
密钥key-value
+报文处理类+组包配置
ApplicationConfig
BaffleConfig
plugin
ApolloConfigLoader
doExecute(GatewayContext)执行网关操作
timeout
AuthenticationConfig
ProcessFlowConfig 处理流程 获取 preHandlers 和postHandlers
InboundChannelConfig
token 认证
添加endPointPlugin
ThreadPoolConfig
ApiSelectorConfig check path method header的Version
container.isFullEncrypted()全报文解密
ApiConfig
网关引擎层
API Operation(operations):List<Object>
ApiSelectorConfig(API选择器)
ProcessFlowConfig
+流程编号 Code:String+名称 name:String
安全配置(security)请求拆组包配置(requestPacket)响应拆组包配置(responsePacket)插件配置(plugins)preHandlerspostHandlers
GovResourceConfig(熔断限流资源)
网关数据流转流程
AuthenticationConfig(API/鉴权)
InboundChannelConfig(上游渠道)
网关策略层
超时配置(timeout):Object
BlacklistConfig(黑白名单)
请求/响应拆组包配置
engineConfig.getProtocol()获取通讯容器协议配置
AbstractEngineActuator
ProtocolContainerConfig(通讯容器配置)
给 plugin 添加 preHandlers 和 postHandlers
ApiSelectorConfig
插件
1:N
ThreadPoolConfig(线程池)
匹配selector
获取网关通用插件,黑名单、鉴权、认证
从线程池中获取一条执行线程
requestPacket
+报文处理类 handlerClassNames+组包配置 packInfo
拆包配置(unpacks)
拆包配置(unpacks):List<Object>
BlacklistConfig
token
正式环境配置(formalConfig)
plugin操作前添加 preHandlers 和 postHandlers
API Operation
1:N
密钥配置
BaffleConfig(挡板配置)
通过config.value 调用Apollo的工厂获取ApolloConfig
通过注解ApolloNameSpace 过滤config
ApiConfig(API)
得到网关config后,通过afterPropertiesSet 定制化处理
unpack
font color=\"#323232\
匹配规则(rules):Object
ApolloListener
外部请求
192.168.10.101:8080
+header+method+path
当前通讯协议配置是否能够命中selector中通讯协议编号集合
ApplicationConfig(下游应用)
密钥配置(secretKey)
从 CONFIG_BASE_PACKAGE 路径获取 GateWayBaseConfig set
formalConfig
responsePacket
给ApolloConfig 添加changeListener
0 条评论
下一页