👜 Solon环境配置项
若您的项目依赖Solon,并加入了forest-solon-plugin依赖,就可以通过 app.yml/app.properties 方式定义配置。
# 配置后端 HTTP API
forest:
  backend: okhttp3 # 配置后端HTTP API为 okhttp3
 1
2
2
# 配置后端HTTP API为 okhttp3
forest.backend=okhttp3
 1
2
2
// Make sure to add code blocks to your code group
目前 Forest 支持okhttp3和httpclient两种后端 HTTP API,若不配置该属性,默认为okhttp3
当然,您也可以改为httpclient
forest:
  backend: httpclient # 配置后端HTTP API为 httpclient
 1
2
2
# 配置后端HTTP API为 httpclient
forest.backend=httpclient
 1
2
2
// Make sure to add code blocks to your code group
# 全局基本配置
在application.yaml / application.properties中配置的 HTTP 基本参数
forest:
  backend: okhttp3             # 后端HTTP框架(默认为 okhttp3)
  max-connections: 1000        # 连接池最大连接数(默认为 500)
  max-route-connections: 500   # 每个路由的最大连接数(默认为 500)
  max-request-queue-size: 100  # [自v1.5.22版本起可用] 最大请求等待队列大小
  max-async-thread-size: 300   # [自v1.5.21版本起可用] 最大异步线程数
  max-async-queue-size: 16     # [自v1.5.22版本起可用] 最大异步线程池队列大小
  timeout: 3000                # [已不推荐使用] 请求超时时间,单位为毫秒(默认为 3000)
  connect-timeout: 3000        # 连接超时时间,单位为毫秒(默认为 timeout)
  read-timeout: 3000           # 数据读取超时时间,单位为毫秒(默认为 timeout)
  max-retry-count: 0           # 请求失败后重试次数(默认为 0 次不重试)
  ssl-protocol: TLS            # 单向验证的HTTPS的默认TLS协议(默认为 TLS)
  log-enabled: true            # 打开或关闭日志(默认为 true)
  log-request: true            # 打开/关闭Forest请求日志(默认为 true)
  log-response-status: true    # 打开/关闭Forest响应状态日志(默认为 true)
  log-response-content: true   # 打开/关闭Forest响应内容日志(默认为 false)
  async-mode: platform         # [自v1.5.27版本起可用] 异步模式(默认为 platform)
 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# 后端HTTP框架(默认为 okhttp3)
forest.backend=okhttp3
# 连接池最大连接数(默认为 500)
forest.max-connections=1000
# 每个路由的最大连接数(默认为 500)
forest.max-route-connections=500
# [自v1.5.22版本起可用] 最大请求等待队列大小
forest.max-request-queue-size=800
# [自v1.5.21版本起可用] 最大异步线程数
forest.max-async-thread-size=300
# [自v1.5.22版本起可用] 最大异步线程池队列大小
forest.max-async-queue-size=16
# (已不推荐使用) 请求超时时间,单位为毫秒(默认为 3000)
forest.timeout=3000
# 连接超时时间,单位为毫秒(默认为 timeout)
forest.connect-timeout=3000
# 数据读取超时时间,单位为毫秒(默认为 timeout)
forest.read-timeout=3000
# 请求失败后重试次数(默认为 0 次不重试)
forest.max-retry-count=0
# 单向验证的HTTPS的默认TLS协议(默认为 TLS)
forest.ssl-protocol=TLS
# 打开或关闭日志(默认为 true)
forest.log-enabled=true
# 打开/关闭Forest请求日志(默认为 true)
forest.log-request=true
# 打开/关闭Forest响应状态日志(默认为 true)
forest.log-response-status=true
# 打开/关闭Forest响应内容日志(默认为 false)
forest.log-response-content=true
# [自v1.5.27版本起可用] 异步模式(默认为 platform)
forest.async-mode=platform
 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
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
// Make sure to add code blocks to your code group
注意
- 这里max-retry-count只是简单机械的请求失败后的重试次数,所以一般建议设置为0。
 - 如果一定要多次重试,请一定要在保证服务端的幂等性的基础上进行重试,否则容易引发生产事故!
 
# 全局变量定义
Forest 可以在forest.variables属性下自定义全局变量。
其中 key 为变量名,value 为变量值。
全局变量可以在任何模板表达式中进行数据绑定。
forest:
  variables:
    username: foo      # 声明全局变量,变量名: username,变量值: foo
    userpwd: bar       # 声明全局变量,变量名: userpwd,变量值: bar
 1
2
3
4
2
3
4
# 声明全局变量,变量名: username,变量值: foo
forest.variables.username=foo
# 声明全局变量,变量名: userpwd,变量值: bar
forest.variables.userpwd=bar
 1
2
3
4
2
3
4
// Make sure to add code blocks to your code group
# 配置 Bean Name
Forest 允许您在 yaml 文件中配置 Bean Id,它对应着ForestConfiguration对象在 Solon 上下文中的 Bean 名称。
forest:
  bean-id: config0 # 在Solon上下文中bean的id,默认值为forestConfiguration
 1
2
2
# 在Solon上下文中bean的id,默认值为forestConfiguration
forest.bean-id: config0
 1
2
2
// Make sure to add code blocks to your code group
然后便可以在 Solon 中通过 Bean 的名称引用到它
@Jnject("config0")
private ForestConfiguration config0;
 1
2
2
帮助我们改善此文档  (opens new window)
  上次更新: 2025/06/24, 01:16:57