admin与网关进行数据同步。
数据同步是指在 shenyu-admin 后台操作数据以后,使用何种策略将数据同步到 Apache ShenYu 网关。Apache ShenYu 网关当前支持ZooKeeper、WebSocket、Http长轮询、Nacos 、Etcd 和 Consul 进行数据同步。
shenyu:
register:
registerType: nacos #http #zookeeper #etcd #nacos #consul
serverLists: xxx.xxx.xxx.xxx:8848 #localhost:2181 #http://localhost:2379 #localhost:8848
props:
sessionTimeout: 5000
connectionTimeout: 2000
checked: true
zombieCheckTimes: 5
scheduledTime: 10
nacosNameSpace: ShenyuRegisterCenter
sync:
nacos:
url: xxx.xxx.xxx.xxx:8848
namespace: ShenyuRegisterCenter
spring:
cloud:
discovery:
enabled: true
nacos:
discovery:
server-addr: 10.21.2.101:8848 # Spring Cloud Alibaba Dubbo use this.
enabled: true
namespace: ShenyuRegisterCenter
shenyu:
sync:
nacos:
url: xxx.xxx.xxx.xxx:8848
namespace: ShenyuRegisterCenteregisterCenter
spring:
cloud:
discovery:
enabled: true
nacos:
discovery:
server-addr: 10.21.2.101:8848 # Spring Cloud Alibaba Dubbo use this.
enabled: true
namespace: ShenyuRegisterCenter
shenyu:
register:
registerType: nacos #http #zookeeper #etcd #nacos #consul
serverLists: 10.21.2.101:8848 #localhost:2181 #http://localhost:2379 #localhost:8848
props:
username: admin
password: 123456
nacosNameSpace: ShenyuRegisterCenter
client:
springCloud:
props:
contextPath: /springcloud
应用客户端接入是指将微服务应用的接口信息同步到shenyu-admin,当前支持Http、 Dubbo、 Spring Cloud、 gRPC、 Motan、 Sofa、 Tars等微服务协议的接入。
应用客户端可以通过Http与admin直接注册;也支持已中间件过渡数据如Zookeeper、Etcd、Consul和Nacos,应用客户端和shenyu-admin通过中间件的数据监听实现数据的同步。
插件名称 |
功能 |
contextpath |
设置服务的上下文路径;在接口调用的时候插件统一给服务器的接口地址加上前缀 |
modifyResponse |
对响应进行修改 |
paramMApping |
请求参数进行修改 |
redirect |
重定向请求 |
request |
请求参数、请求头以及 Cookie 来添加、修改、移除请求头 |
rewrite |
重写请求路径 |
插件名称 |
功能 |
divide |
处理 http协议 请求 |
dubbo |
dubbo插件是将 http协议 转换成 dubbo协议 的插件 |
SpringCloud插件 |
将http协议 转成 Spring Cloud协议 |
sentinel插件是网关用来对流量进行限流与熔断的可选选择之一
插件名称 |
功能 |
cryptorRequest |
插件是通过 fieldNames 去匹配 requestBody 里面的参数进行 解密 处理,替换当前 requestBody 内容 |
CryptorResponse |
fieldNames 去匹配 responseBody 里面的参数进行 加密 处理,替换当前 fieldNames 对应内容 |
jwt 插件 |
jwt 插件,是针对 http 请求头的 token属性或者是 authorization 属性携带值进行鉴权判断,兼容 OAuth2.0 |
OAuth2 |
插件使用 Webflux OAuth2 实现,用于支持 OAuth 协议 |
Sign插件 |
用来对请求进行签名认证 |