All Downloads are FREE. Search and download functionalities are using the official Maven repository.

conf.default-config.yml Maven / Gradle / Ivy

There is a newer version: 2.0.0.0
Show newest version
global:
  #描述: 系统相关配置
  system:
    #描述: 服务发现集群
    discoverCluster:
      #描述: 服务刷新间隔
      refreshInterval: 1m
      #描述: 系统服务使用的路由链
      routers:
        - metadataRouter
        - nearbyBasedRouter
      #描述: 系统服务使用的负载均衡方式
      lbPolicy: weightedRandom
    configCluster:
      #描述: 服务刷新间隔
      refreshInterval: 1m
      #描述: 系统服务使用的路由链
      routers:
        - metadataRouter
        - nearbyBasedRouter
      #描述: 系统服务使用的负载均衡方式
      lbPolicy: weightedRandom
    #描述: 健康检查集群
    healthCheckCluster:
      refreshInterval: 1m
      routers:
        - metadataRouter
        - nearbyBasedRouter
      lbPolicy: ringHash
    #描述: 监控上报集群
    monitorCluster:
      refreshInterval: 1m
      routers:
        - metadataRouter
        - nearbyBasedRouter
      lbPolicy: ringHash
    #描述:流程配置
    flow:
      name: default
    #描述: SDK流程数据缓存配置
    flowCache:
      enable: true
      name: simpleCache
      expireInterval: 60s
  #描述: SDK api调用相关配置
  api:
    #描述: api超时时间
    timeout: 1s
    #描述:是否开启客户端上报
    reportEnable: true
    #描述: 客户端给服务端定时上报自身信息的间隔
    reportInterval: 10m
    #描述: api因为网络原因调用失败后的最大重试次数
    maxRetryTimes: 1
    #描述: 2次重试之间的重试间隔
    retryInterval: 500ms
  #描述: 对接北极星服务端的相关配置
  serverConnector:
    #Descirption: id of server connector.
    id: polaris
    #描述:默认服务端埋点接入地址
    addresses:
      - 127.0.0.1:8091
    #描述: 访问server的连接协议,SDK会根据协议名称会加载对应的插件
    protocol: grpc
    #描述: 发起连接后的连接超时时间
    connectTimeout: 500ms
    #描述: 与服务端发起远程请求超时时间
    messageTimeout: 5s
    #描述: 连接空闲时间(以最后一次消息交互时间来算),长连接模式下,当连接空闲超过一定时间后,SDK会主动释放连接
    connectionIdleTimeout: 60s
    #描述: server节点的切换周期,为了使得server的压力能够均衡,SDK会定期切换目标服务端节点
    serverSwitchInterval: 10m
    #描述:重连间隔时间
    reconnectInterval: 500ms
  #描述: 监控及日志数据上报相关配置
  statReporter:
    #描述: 是否启用上报
    enable: true
    plugin:
      prometheus:
        #描述: 设置 prometheus 指标上报模式
        #类型:string
        #默认值:pull
        #范围:pull|push
        type: pull
        #描述: 设置 prometheus http-server 的监听端口
        #类型:int
        #默认值: 28080, 默认会自动从 [28080, 28090] 进行逐个探测占用
        #如果设置为负数,则不会开启默认的http-server,如果设置为0,则随机选择一个可用端口进行启动 http-server
        port: 28080
        #描述: 设置 prometheus http-server 的拉取path
        #类型:string
        #默认值: /metric
        path: /metric
        #描述: 设置 prometheus http-server 的监听的IP
        #类型:string
        #默认值: 0.0.0.0
        host: 0.0.0.0
        # #描述: 设置 pushgateway 的地址, 仅 type == push 时生效
        # #类型:string
        # #默认 global.serverConnector.addresses[0]:9091
        # address: 127.0.0.1:9091
        # #描述:设置metric数据推送到pushgateway的执行周期, 仅 type == push 时生效
        # #类型:string
        # #格式:^\d+(s|m|h)$
        # #范围:[1s:...]
        # #默认值:10s
        # pushInterval: 10s
  location:
    providers:
      - type: local
        options:
          region: ${REGION:}
          zone: ${ZONE:}
          campus: ${CAMPUS:}
#描述: 主调端配置
consumer:
  # Switch of discovery.
  discoveries:
    - serverConnectorId: polaris # Name of server connector.
      enable: true # If discovery is enabled.
  zeroProtection:
    # 是否开启零实例保护
    enable: false
    # 是否实例的检测网络连通性
    needTestConnectivity: false
    # 探测结果的过期时间(ms)
    testConnectivityExpiration: 60000
    # 检测网络连通性超时时间(ms)
    testConnectivityTimeout: 1000
    # 检测网络连通性的并发数
    testConnectivityParallel: 1
  #描述: 本地服务缓存相关配置
  localCache:
    #描述: 缓存插件名
    type: inmemory
    #描述: 是否启用服务数据缓存
    serviceExpireEnable: true
    #描述: 服务过期淘汰时间
    serviceExpireTime: 24h
    #描述: 服务定期同步刷新周期
    serviceRefreshInterval: 2s
    #描述: 拉取服务元信息列表定期同步刷新周期
    serviceListRefreshInterval: 60s
    #描述: 是否启用服务数据文件缓存
    persistEnable: true
    #描述: 服务缓存持久化目录,SDK在实例数据更新后,按照服务维度将数据持久化到磁盘
    persistDir: ./polaris/backup
    #描述: 缓存写盘失败的最大重试次数
    persistMaxWriteRetry: 1
    #描述: 缓存从磁盘读取失败的最大重试次数
    persistMaxReadRetry: 0
    #描述: 缓存读写磁盘的重试间隔
    persistRetryInterval: 500ms
  #描述: 服务路由相关配置
  serviceRouter:
    #描述: 前置路由链
    beforeChain:
      # 隔离路由
      - isolatedRouter
    #描述: 服务路由链
    chain:
      # 泳道路由
      - laneRouter
      # 元数据路由
      - metadataRouter
      # 规则路由
      - ruleBasedRouter
      # 就近路由
      - nearbyBasedRouter
    #描述: 后置路由链
    afterChain:
      # 兜底(全死全活)路由
      - recoverRouter
    #描述:服务路由插件的配置
    plugin:
      recoverRouter:
        # 是否剔除被熔断的实例
        excludeCircuitBreakInstances: true
      metadataRouter:
        #描述: 元数据路由降级策略。none(不降级), all(降级返回所有的节点), others(降级返回其他KEY的节点)
        metadataFailOverType: all
      ruleBasedRouter:
        #描述:规则路由降级策略。all(降级返回所有的节点),none(不降级)
        failoverType: all
      nearbyBasedRouter:
        #描述: 就近路由的最小匹配级别。region(大区)、zone(区域)、campus(园区)
        matchLevel: zone
        #描述: 最大匹配级别
        maxMatchLevel: all
        #描述: 强制就近
        strictNearby: false
        #描述: 全部实例不健康时是否降级其他地域
        enableDegradeByUnhealthyPercent: false
        #描述: 达到降级标准的不健康实例百分比
        unhealthyPercentToDegrade: 100
        #描述: 是否通过上报方式获取地域信息
        enableReportLocalAddress: false
  #描述:负载均衡相关配置
  loadbalancer:
    #描述: 负载均衡类型(已注册的负载均衡插件名)
    type: weightedRandom
  #描述:节点熔断相关配置
  circuitBreaker:
    #描述: 是否启用本地节点熔断功能
    enable: true
    #描述: 故障检测周期,根据周期内故障进行熔断
    checkPeriod: 1m
    #描述: 首次熔断时间,后续熔断时间=重试次数*sleepWindow
    sleepWindow: 30s
    #描述: 熔断器半开后最大允许的请求数
    requestCountAfterHalfOpen: 3
    #描述: 熔断器半开到关闭所必须的最少成功请求数
    successCountAfterHalfOpen: 3
    #描述: 熔断规则远程拉取开关
    enableRemotePull: true
    #描述:熔断策略,SDK会根据策略名称加载对应的熔断器插件(已注册的熔断器插件名)
    chain:
      - composite
    #描述: 熔断插件配置
    plugin:
      #描述:基于周期连续错误数熔断策略配置
      errorCount:
        #描述: 触发连续错误熔断的阈值
        continuousErrorThreshold: 10
      #描述:基于周期错误率的熔断策略配置
      errorRate:
        #描述:触发错误率熔断的阈值百分比
        errorRateThreshold: 50
        #描述: 错误率熔断的滑窗数量
        metricNumBuckets: 5
        #描述: 触发错误率熔断的最低请求阈值
        requestVolumeThreshold: 10
  #描述:主动探测相关配置
  outlierDetection:
    #描述:何时开启主动探测。never(永不开启),on_recover(恢复时才开启主动探测),always(一直开启主动探测)
    when: never
    #描述:主动探测周期
    checkPeriod: 30s
    #描述:主动探测插件链
    chain:
      - tcp
      - udp
      - http
    plugin:
      # 描述:基于TCP的故障探测策略
      tcp:
        # 描述:tcp发送的探测包,为空则默认只做连接探测
        send: ""
        # 描述:期望接收的TCP回复包,为空则默认只做连接或发包探测
        receive: ""
      # 描述:基于TCP的故障探测策略
      udp:
        # 描述:探测超时时间
        timeout: 100ms
        # 描述:udp发送的探测包,假如不配置,则不启动UDP探测
        send: ""
        # 描述:期望接收的UDP回复包,假如不配置,则不启动UDP探测
        receive: ""
      http:
        # 描述:探测超时时间
        timeout: 100ms
        # 描述:http探测路径,必选字段,假如不配置,则不启用http探测
        path: /ping
  #服务订阅相关配置
  subscribe:
    #服务订阅执行回调Listener的线程数量
    callbackConcurrency: 1
# 被调方配置
provider:
  # Switch of registration
  registers:
    - serverConnectorId: polaris # Name of server connector.
      enable: true # If registration is enabled.
  # 优雅上下线
  lossless:
    # 是否启用优雅上下线
    enable: false
    # 优雅上下线功能需要对外提供接口,接口的监听IP
    host: 0.0.0.0
    # 优雅上下线功能需要对外提供接口,接口的监听端口
    port: 28080
    # 优雅上线时,如果没有启动探测,则兜底延迟多久会进行上线
    delayRegisterInterval: 30s
    # 优雅上线的探测周期
    healthCheckInterval: 5s
  # 限流配置
  rateLimit:
    # 是否开启限流功能
    enable: true
    # 限流本地存在的最大窗口限制
    maxWindowCount: 10000000
    # 超过最大窗口限制时的策略。pass(放通), reject(限流)
    fallbackOnExceedWindowCount: pass
    # 与远程限流服务端同步的最大超时时间
    remoteSyncTimeoutMilli: 200
    # 限流服务的命名空间
    limiterNamespace: Polaris
    # 限流服务名
    limiterService: polaris.limiter
    # 匀速排队最大排队时间,ms
    maxQueuingTime: 1000
    # 是否上报限流监控视图, 该开关默认关闭,如果需要使用限流的老监控视图,则需要开启此监控数据上报开关
    reportMetrics: false
# 配置中心默认配置
config:
  # 类型转化缓存的key数量
  propertiesValueCacheSize: 100
  # 类型转化缓存的过期时间,默认为1分钟
  propertiesValueExpireTime: 60000
  # 连接器配置,默认为北极星服务端
  serverConnector:
    id: polaris-config
    connectorType: polaris
    #描述:默认服务端埋点接入地址
    addresses:
      - 127.0.0.1:8093
    #描述: 访问server的连接协议,SDK会根据协议名称会加载对应的插件
    protocol: grpc
    #描述: 发起连接后的连接超时时间
    connectTimeout: 500ms
    #描述: 与服务端发起远程请求超时时间
    messageTimeout: 5s
    #描述: 连接空闲时间(以最后一次消息交互时间来算),长连接模式下,当连接空闲超过一定时间后,SDK会主动释放连接
    connectionIdleTimeout: 60s
    #描述: server节点的切换周期,为了使得server的压力能够均衡,SDK会定期切换目标服务端节点
    serverSwitchInterval: 10m
    #描述:重连间隔时间
    reconnectInterval: 500ms
    #描述: 配置文件持久化到本地开关
    persistEnable: true
    #描述: 配置文件持久化目录,SDK在配置文件变更后,把相关的配置持久化到本地磁盘
    persistDir: ./polaris/backup/config
    #描述: 配置文件写盘失败的最大重试次数
    persistMaxWriteRetry: 1
    #描述: 配置文件从磁盘读取失败的最大重试次数
    persistMaxReadRetry: 0
    #描述: 缓存读写磁盘的重试间隔
    persistRetryInterval: 500ms
    #描述: polaris server获取配置文件失败是否允许回退到本地配置文件开关
    fallbackToLocalCache: true




© 2015 - 2025 Weber Informatics LLC | Privacy Policy