Solon 框架详解(十一)- Solon Cloud 的配置说明

Solon 详解系列文章:
Solon 框架详解(一)- 快速入门
Solon 框架详解(二)- Solon的核心
Solon 框架详解(三)- Solon的web开发
Solon 框架详解(四)- Solon的事务传播机制
Solon 框架详解(五)- Solon扩展机制之Solon Plugin
Solon 框架详解(六)- Solon的校验框架使用、定制与扩展
Solon 框架详解(七)- Solon Ioc 的注解对比Spring及JSR330
Solon 框架详解(八)- Solon的缓存框架使用和定制
Solon 框架详解(九)- 渲染控制之定制统一的接口输出
Solon 框架详解(十)- Solon 的常用配置
Solon 框架详解(十一)- Solon Cloud 的配置说明

一、配置示例:

solon:
  app:
    name: "solon-consul-test"
    group: "test"

solon.cloud.consul:
  server: "localhost"

二、配置说明

注:具体配置时,用框架名替代@@符

属性说 说明 框架可使用情况
solon.cloud.@@.server 服务地址(ip:port) nacos、consul、water
solon.cloud.@@.token 链接令牌 consul
solon.cloud.@@.username 链接用户名 nacos
solon.cloud.@@.password 链接密码 nacos
solon.cloud.@@.alarm 造警接收号 water
solon.cloud.@@.config.enable 配置服务启用(默认:true) nacos、consul、water
solon.cloud.@@.config.server 服务地址(ip:port) nacos、consul、water
solon.cloud.@@.config.loadGroup 需要启动时加载的配置组 nacos、water
solon.cloud.@@.config.loadKey 需要启动时加载的Key nacos、consul、wate
solon.cloud.@@.config.refreshInterval 配置刷新间隔 consul
solon.cloud.@@.discovery.enable 注册与发现服务启用(默认:true) nacos、consul、water
solon.cloud.@@.discovery.server 服务地址(ip:port) nacos、consul、water
solon.cloud.@@.discovery.tags 服务标签 consul
solon.cloud.@@.discovery.healthCheckPath 服务健康检查路径 consul、water
solon.cloud.@@.discovery.healthCheckInterval 服务健康检查间隔时间 consul
solon.cloud.@@.discovery.healthDetector 服务健康上报指标 consul
solon.cloud.@@.discovery.refreshInterval 服务发现刷新间隔 consul
solon.cloud.@@.event.enable 事件总线服务(默认:true) water、rabbitmq、rocketmq
solon.cloud.@@.event.server 服务地址(ip:port) water、rabbitmq、rocketmq
solon.cloud.@@.event.exchange 交换机或关系组 rabbitmq、rocketmq
solon.cloud.@@.event.queue 指定队列 rabbitmq、rocketmq
solon.cloud.@@.event.receive 指定接收域 water
solon.cloud.@@.event.seal 事件签名 water
solon.cloud.@@.lock.enable 分布式锁服务(默认:true) water
solon.cloud.@@.lock.server 服务地址(ip:port) water
solon.cloud.@@.log.enable 日志总线服务(默认:true) water
solon.cloud.@@.log.server 服务地址(ip:port) water
solon.cloud.@@.log.default 日志默认记录器 water

三、适配要求

(一)日志服务适配要求

  • 对业务的性能影响极小
    • 例如:消息先进入本地队列,累积后再批量提交到服务端

(二)事件服务适配要求

  • 支持定时事件
  • 只要订阅了主题,各服务组都能收到
  • 当前处理失败后逐级延后重试,直到最终成功;但不影响别的服务组

延后间隔如下(可通过ExpirationUtils生成ttl):

次数 延后间隔时间
0 0
1 5s
2 10s
3 30秒
4 1分钟
5 2分种
6 5分钟
7 10分钟
8 30分钟
9 1小时
n.. 2小时

四、本地发布服务的配置补充

本地发布服务配置,仅在云端发布服务被禁时才生效(一般用于本地测试或调试;也可用于k8s之类的服务名固定的场景)

solon.cloud.local:
  discovery:
    service:
      helloapi:  #服务名
        - "//localhost:8081"  #服务地址
      userservice: #服务名
        - "//userservice" #服务地址