网关属性配置

    属性详解

    shenyu.httpclient 配置

    这是 ShenYu 网关中代理Http及SpringCloud协议后,用于发送代理请求的HttpClient配置。

    • pool config

    HttpClient连接池配置:

    NameTypeDefaultRequiredDescription
    typeStringELASTICNoHttpClient连接池类型,默认值为ELASTIC
    - ELASTIC: 连接池可以按需缓存和增长。
    - FIXED: 连接池缓存并重用,有固定的最大连接数。
    - : 连接池总是会创建一个新的连接。
    nameStringproxyNo连接池映射名称,默认为proxy
    maxConnectionsint2可用处理器数,最小值为16No仅适用于 FIXED 类型,在现有连接上开始挂起获取之前的最大连接数。
    默认值为可用处理器数2。
    (最小值为 16)
    acquireTimeoutint45000No仅适用于 FIXED 类型,等待获取连接的最长时间(毫秒)。默认值为 45000
    • Proxy config

    Netty HttpClient 代理的相关配置:

    NameTypeDefaultRequiredDescription
    hostStringnullNoNetty HttpClient 代理配置的主机名。
    portStringnullNoNetty HttpClient 的代理配置端口。
    usernameStringnullNoNetty HttpClient 代理配置的用户名。
    passwordStringnullNoNetty HttpClient 代理配置的密码。
    nonProxyHostsPatternStringnullNo直连的主机列表的正则表达式 (Java)。
    NameTypeDefaultRequiredDescription
    useInsecureTrustManagerBooleanfalseNo是否信任所有下游证书,默认false
    trustedX509CertificatesArrayNullNo配置自己的信任的证书列表。
    handshakeTimeoutint10000NoSSL握手超时时间(毫秒),默认值为10000
    closeNotifyFlushTimeoutint3000NoSSL close_notify 刷新超时(毫秒)默认值为 3000.
    closeNotifyReadTimeoutint0NoSSL close_notify 读取超时(毫秒)默认值为 0.
    defaultConfigurationTypeStringTCPNoSslContextBuilder 的默认配置, 默认为 TCP.
    - H2: SslProvider 将根据 OpenSsl.isAlpnSupported()、SslProvider.HTTP2_CIPHERS、ALPN 支持、HTTP/1.1 和 HTTP/2 支持进行设置
    - TCP: SslProvider 将根据 OpenSsl.isAvailable() 设置
    - NONE: 不会有默认配置
    过滤器相关配置
    • shenyu.file 配置

    文件过滤器的相关配置。

    • shenyu.cross 配置

    跨域相关配置。

    名称类型默认值是否必填说明
    enabledBooleanfalse是否支持跨域请求
    • shenyu.exclude 配置

    拒绝指定请求经过网关的相关配置

    名称类型默认值是否必填说明
    enabledBooleanfalse是否拒绝指定请求经过网关
    pathsArray匹配该列表的请求不经过网关(支持路径匹配)
    shenyu.sync 配置

    网关和Admin端使用数据同步的相关配置。

    名称类型默认值是否必填说明
    urlsStringAdmin的websocket服务地址,多个地址用 分开 。

    使用zookeeper进行数据同步的属性配置如下:

    使用http长轮询进行数据同步的属性配置如下:

    名称类型默认值是否必填说明
    urlStringAdmin的服务地址

    使用nacos进行数据同步的属性配置如下:

    名称类型默认值是否必填说明
    urlStringnacos连接地址
    namespaceString命名空间
    usernameString用户名
    passwordString密码
    acm阿里云ACM服务配置
    名称类型默认值是否必填说明
    enabledbooleanfalse是否启用
    endpointStringACM服务地址
    namespaceStringnamespace
    accessKeyStringaccessKey
    secretKeyStringsecretKey

    使用etcd进行数据同步的属性配置如下:

    名称类型默认值是否必填说明
    urlStringconsul连接地址
    waitTimeint请求consul服务拉取配置信息的超时时间(毫秒)
    watchDelayint同步间隔(毫秒)