application-uat.yaml 11.5 KB
Newer Older
lanbaoming's avatar
lanbaoming committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246
server:
  port: 9001

--- #################### 数据库相关配置 ####################
spring:
  # 数据源配置项
  autoconfigure:
    exclude:
      - com.alibaba.druid.spring.boot.autoconfigure.DruidDataSourceAutoConfigure # 排除 Druid 的自动配置,使用 dynamic-datasource-spring-boot-starter 配置多数据源
  datasource:
    druid: # Druid 【监控】相关的全局配置
      web-stat-filter:
        enabled: true
      stat-view-servlet:
        enabled: true
        allow: # 设置白名单,不填则允许所有访问
        url-pattern: /druid/*
        login-username: # 控制台管理用户名和密码
        login-password:
      filter:
        stat:
          enabled: true
          log-slow-sql: true # 慢 SQL 记录
          slow-sql-millis: 100
          merge-sql: true
        wall:
          config:
            multi-statement-allow: true
    dynamic: # 多数据源配置
      druid: # Druid 【连接池】相关的全局配置
        initial-size: 5 # 初始连接数
        min-idle: 10 # 最小连接池数量
        max-active: 20 # 最大连接池数量
        max-wait: 600000 # 配置获取连接等待超时的时间,单位:毫秒
        time-between-eviction-runs-millis: 60000 # 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位:毫秒
        min-evictable-idle-time-millis: 300000 # 配置一个连接在池中最小生存的时间,单位:毫秒
        max-evictable-idle-time-millis: 900000 # 配置一个连接在池中最大生存的时间,单位:毫秒
        validation-query: SELECT 1 FROM DUAL # 配置检测连接是否有效
        test-while-idle: true
        test-on-borrow: false
        test-on-return: false
      primary: master
      datasource:
        master:
          name: jiedao
          url: jdbc:mysql://10.10.0.100:3306/${spring.datasource.dynamic.datasource.master.name}?useUnicode=true&useSSL=true&characterEncoding=utf8&characterSetResults=utf8&allowMultiQueries=true&zeroDateTimeBehavior=convertToNull&transformedBitIsBoolean=true&autoReconnect=true&rewriteBatchedStatements=TRUE
          driver-class-name: com.mysql.cj.jdbc.Driver
          username: root
          password: mysql@2022
        slave: # 模拟从库,可根据自己需要修改 # 模拟从库,可根据自己需要修改
          name: jiedao
          url: jdbc:mysql://10.10.0.100:3306/${spring.datasource.dynamic.datasource.slave.name}?useUnicode=true&useSSL=true&characterEncoding=utf8&characterSetResults=utf8&allowMultiQueries=true&zeroDateTimeBehavior=convertToNull&transformedBitIsBoolean=true&autoReconnect=true&rewriteBatchedStatements=TRUE
          driver-class-name: com.mysql.cj.jdbc.Driver
          username: root
          password: mysql@2022

  # Redis 配置。Redisson 默认的配置足够使用,一般不需要进行调优
  redis:
    host: 10.10.0.101 # 地址
    port: 6379 # 端口
    database: 0 # 数据库索引
    password: redis@2022
    timeout: 60s
    connect-timeout: 60s

  redis-limiter:
    redis-host: 10.10.0.101          # redis server IP                  默认值:127.0.0.1
    redis-port: 6379                # redis service 端口               默认值:6379
    redis-db: 1                     # redis service 数据库             默认值:6379
    redis-password: redis@2022      # redis 访问密码                   默认值:null
    redis-connection-timeout: 2000  # redis 连接超时时间               默认值:2000
    redis-pool-max-idle: 50         # redis 连接池最大空闲连接数        默认值:50
    redis-pool-min-idle: 10         # redis 连接池最小空闲连接数        默认值: 10
    redis-pool-max-wait-millis: -1  # 从连接池中获取连接最大等待时间     默认值: -1
    redis-pool-max-total: 200       # 连接池中最大连接数                默认值: 200
    redis-key-prefix: #RL           # 访问痕迹key值前缀                 默认值: #RL
    check-action-timeout: 100       # 访问检查动作最大执行时间(单位毫秒) 默认值: 100
    enable-dynamical-conf: true     # 是否开启动态配置                  默认值: false
    channel: #RLConfigChannel      # 配置变更事件发送channel名称        默认值: #RLConfigChannel
    error: '您的请求过于频繁,请稍后再试'

--- #################### 定时任务相关配置 ####################

# Quartz 配置项,对应 QuartzProperties 配置类
spring:
  quartz:
    auto-startup: true # 测试环境,需要开启 Job
    scheduler-name: schedulerName # Scheduler 名字。默认为 schedulerName
    job-store-type: jdbc # Job 存储器类型。默认为 memory 表示内存,可选 jdbc 使用数据库。
    wait-for-jobs-to-complete-on-shutdown: true # 应用关闭时,是否等待定时任务执行完成。默认为 false ,建议设置为 true
    properties: # 添加 Quartz Scheduler 附加属性,更多可以看 http://www.quartz-scheduler.org/documentation/2.4.0-SNAPSHOT/configuration.html 文档
      org:
        quartz:
          # Scheduler 相关配置
          scheduler:
            instanceName: schedulerName
            instanceId: AUTO # 自动生成 instance ID
          # JobStore 相关配置
          jobStore:
            # JobStore 实现类。可见博客:https://blog.csdn.net/weixin_42458219/article/details/122247162
            class: org.springframework.scheduling.quartz.LocalDataSourceJobStore
            isClustered: true # 是集群模式
            clusterCheckinInterval: 15000 # 集群检查频率,单位:毫秒。默认为 15000,即 15 秒
            misfireThreshold: 60000 # misfire 阀值,单位:毫秒。
          # 线程池相关配置
          threadPool:
            threadCount: 25 # 线程池大小。默认为 10 。
            threadPriority: 5 # 线程优先级
            class: org.quartz.simpl.SimpleThreadPool # 线程池类型
    jdbc: # 使用 JDBC 的 JobStore 的时候,JDBC 的配置
      initialize-schema: NEVER # 是否自动使用 SQL 初始化 Quartz 表结构。这里设置成 never ,我们手动创建表结构。

--- #################### 配置中心相关配置 ####################

# Apollo 配置中心
apollo:
  bootstrap:
    enabled: true # 设置 Apollo 在启动阶段生效
    eagerLoad:
      enabled: true # 设置 Apollo 在日志初始化前生效,可以实现日志的动态级别配置
  jdbc: # 自定义的 JDBC 配置项,用于数据库的地址
    dao: cn.iocoder.yudao.module.infra.dal.mysql.config.ConfigDAOImpl
    url: ${spring.datasource.dynamic.datasource.master.url}
    username: ${spring.datasource.dynamic.datasource.master.username}
    password: ${spring.datasource.dynamic.datasource.master.password}

--- #################### 服务保障相关配置 ####################

# Lock4j 配置项
lock4j:
  acquire-timeout: 3000 # 获取分布式锁超时时间,默认为 3000 毫秒
  expire: 30000 # 分布式锁的超时时间,默认为 30 毫秒

# Resilience4j 配置项
resilience4j:
  ratelimiter:
    instances:
      backendA:
        limit-for-period: 1 # 每个周期内,允许的请求数。默认为 50
        limit-refresh-period: 60s # 每个周期的时长,单位:微秒。默认为 500
        timeout-duration: 1s # 被限流时,阻塞等待的时长,单位:微秒。默认为 5s
        register-health-indicator: true # 是否注册到健康监测

--- #################### 监控相关配置 ####################

# Actuator 监控端点的配置项
management:
  endpoints:
    web:
      base-path: /actuator # Actuator 提供的 API 接口的根目录。默认为 /actuator
      exposure:
        include: '*' # 需要开放的端点。默认值只打开 health 和 info 两个端点。通过设置 * ,可以开放所有端点。

# Spring Boot Admin 配置项
spring:
  boot:
    admin:
      # Spring Boot Admin Client 客户端的相关配置
      client:
        url: http://127.0.0.1:${server.port}/${spring.boot.admin.context-path} # 设置 Spring Boot Admin Server 地址
        instance:
          prefer-ip: true # 注册实例时,优先使用 IP
      # Spring Boot Admin Server 服务端的相关配置
      context-path: /admin # 配置 Spring

# 日志文件配置
logging:
  level:
    root: INFO

--- #################### 微信公众号相关配置 ####################
wx: # 参见 https://github.com/Wechat-Group/WxJava/blob/develop/spring-boot-starters/wx-java-mp-spring-boot-starter/README.md 文档
  mp:
    # 公众号配置(必填)
    app-id: wx041349c6f39b268b
    secret: 5abee519483bc9f8cb37ce280e814bd0
    # 存储配置,解决 AccessToken 的跨节点的共享
    config-storage:
      type: RedisTemplate # 采用 RedisTemplate 操作 Redis,会自动从 Spring 中获取
      key-prefix: wx # Redis Key 的前缀 TODO 芋艿:解决下 Redis key 管理的配置
      http-client-type: HttpClient # 采用 HttpClient 请求微信公众号平台

--- #################### 捷道相关配置 ####################

web:
  resource: /app/cms/

# 捷道配置项,设置当前项目所有自定义的配置
yudao:
  security:
    token-header: Authorization
    token-timeout: 30d
    session-timeout: 30d
    mock-enable: true
    mock-secret: test
  xss:
    enable: false
    exclude-urls: # 如下两个 url,仅仅是为了演示,去掉配置也没关系
      - ${spring.boot.admin.context-path}/** # 不处理 Spring Boot Admin 的请求
      - ${management.endpoints.web.base-path}/** # 不处理 Actuator 的请求
  pay:
    pay-notify-url: http://niubi.natapp1.cc/api/pay/order/notify
    pay-return-url: http://niubi.natapp1.cc/api/pay/order/return
    refund-notify-url: http://niubi.natapp1.cc/api/pay/refund/notify
  demo: false # 开启演示模式
  business: # 业务运行配置
    debug: false # 开启debug模式
  sms-code: # 短信验证码相关的配置项
    expire-times: 10m
    send-frequency: 1m
    send-maximum-quantity-per-day: 50
    begin-code: 9999 # 这里配置 9999 的原因是,测试方便。
    end-code: 9999 # 这里配置 9999 的原因是,测试方便。
  email-code: # 邮件相关的配置项
    expire-times: 10m # 过期时间
    send-frequency: 1m # 邮件发送频率
    send-maximum-quantity-per-day: 50
    begin-code: 9999 # 验证码最小值
    end-code: 9999 # 验证码最大值。

justauth:
  enabled: true
  type:
    GITEE: # Gitee
      client-id: ee61f0374a4c6c404a8717094caa7a410d76950e45ff60348015830c519ba5c1
      client-secret: 7c044a5671be3b051414db0cf2cec6ad702dd298d2416ba24ceaf608e6fa26f9
      ignore-check-redirect-uri: true
    DINGTALK: # 钉钉
      client-id: dingvrnreaje3yqvzhxg
      client-secret: i8E6iZyDvZj51JIb0tYsYfVQYOks9Cq1lgryEjFRqC79P3iJcrxEwT6Qk2QvLrLI
      ignore-check-redirect-uri: true
    WECHAT_ENTERPRISE: # 企业微信
      client-id: wwd411c69a39ad2e54
      client-secret: 1wTb7hYxnpT2TUbIeHGXGo7T0odav1ic10mLdyyATOw
      agent-id: 1000004
      ignore-check-redirect-uri: true
  cache:
    type: REDIS
    prefix: 'social_auth_state:' # 缓存前缀,目前只对 Redis 缓存生效,默认 JUSTAUTH::STATE::
    timeout: 24h # 超时时长,目前只对 Redis 缓存生效,默认 3 分钟

ue:
  root-path: /app/static/uploads #文件存储根目录(可选配置),默认为[classpath:/static]
  server-url: /ueditor/jsp/controller #服务器统一请求接口路径(可选配置),默认为[/ueditor/jsp/controller]  upload: cn.jasonone.ueditor.upload.LocationFileStorage #文件持久化处理类(可选配置),默认为[cn.jasonone.ueditor.upload.LocationFileStorage]
  templates-url: templates
  temp-dir: temp