This is an automated email from the ASF dual-hosted git repository.
liubao pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/servicecomb-docs.git
The following commit(s) were added to refs/heads/master by this push:
new 058bc87 [SCB-1471]: Make the config items description about fallback
policy clearer (#114)
058bc87 is described below
commit 058bc87bd871c003d122095abc1618bc3929a957
Author: Wayne <[email protected]>
AuthorDate: Mon Feb 10 09:40:16 2020 +0800
[SCB-1471]: Make the config items description about fallback policy clearer
(#114)
* adjust content position of metrics doc
* clearify config item key in downgrade-policy
* change back code temporarily
* change chinese to english and remove dependency version
* remove dependency version in zh_CN file
* Make the config items description about fallback policy clearer
---
.../configuration/downgrade-strategy.md | 26 ++++++++++------------
.../configuration/downgrade-strategy.md | 26 +++++++++++-----------
2 files changed, 25 insertions(+), 27 deletions(-)
diff --git
a/java-chassis-reference/en_US/build-provider/configuration/downgrade-strategy.md
b/java-chassis-reference/en_US/build-provider/configuration/downgrade-strategy.md
index d526788..bc63b12 100644
---
a/java-chassis-reference/en_US/build-provider/configuration/downgrade-strategy.md
+++
b/java-chassis-reference/en_US/build-provider/configuration/downgrade-strategy.md
@@ -47,8 +47,6 @@
servicecomb.isolation.Provider.DemoService.hello.sayHello.timeout.enabled
### Configuration Items
-Tips: the items' type' field is omitted in the following table, while items
can be applied to both Provider and Consumer.
-
For Providers, the configuration item should be:
servicecomb.isolation.Consumer.timeout.enabled
For Consumers, the conriguration item should be
servicecomb.isolation.Provider.timeout.enabled
@@ -57,18 +55,18 @@ For Consumers, the conriguration item should be
servicecomb.isolation.Provider.t
| Configuration Item | Default value |
Value Range | Required | Description
| Tips
|
| :--------------------------------------------------- | :------------- |
:---------------------------- | :------- |
:----------------------------------------------------------- |
:----------------------------------------------------------- |
-| servicecomb.isolation.timeout.enabled | FALSE | -
| No | Enable timeout detection or not.
|
|
-| servicecomb.isolation.timeoutInMilliseconds | 30000 | -
| No | The timeout duration threshold.
|
|
-| servicecomb.isolation.maxConcurrentRequests | 10 | -
| No | The maximum number of concurrent
requests. |
|
-| servicecomb.circuitBreaker.enabled | TRUE | -
| No | Enable circuit breaking or not.
|
|
-| servicecomb.circuitBreaker.forceOpen | FALSE | -
| No | Force circuit breaker to be enabled
regardless of the number of errors. |
|
-| servicecomb.circuitBreaker.forceClosed | FALSE | -
| No | Force circuit breaker to be disabled.
| When forceOpen and forceClose are set at the same time,
forceOpen will take effect. |
-| servicecomb.circuitBreaker.sleepWindowInMilliseconds | 15000 | -
| No | How long to recover from a circuit
breaking. | After the recovery, the number of failures will be
reset. Note: If the call fails immediately after a recover, the circuit breaker
is triggered immediately again. |
-| servicecomb.circuitBreaker.requestVolumeThreshold | 20 | -
| No | The threshold of failed requests within
10 seconds. If the threshold is reached, circuit breaker is triggered. | The 10
seconds duration is splitted evenly into 10 segments for error calculation. The
calculation will start after 1 second. So circuit breakers are triggered after
at least 1 second. |
-| servicecomb.circuitBreaker.errorThresholdPercentage | 50 | -
| No | The threshold of error rate. If the
threshold is reached, circuit breaker is triggered. |
|
-| servicecomb.fallback.enabled | TRUE | -
| No | Enable fallback handling or not
|
|
-| servicecomb.fallback.maxConcurrentRequests | 10 | -
| No | The max number of concurrent
fallback(specified by servicecomb.fallbackpolicy.policy) calls. When the
threshold is reached, the fallback method is not called by return exception
directly. | |
-| servicecomb.fallbackpolicy.policy | throwexception |
returnnulll \| throwexception | No | The fallback policy when errors
occurred. |
|
+| servicecomb.isolation.[type].timeout.enabled | FALSE
| - | No | Enable timeout detection or not.
|
|
+| servicecomb.isolation.[type].timeoutInMilliseconds | 30000
| - | No | The timeout duration threshold.
|
|
+| servicecomb.isolation.[type].maxConcurrentRequests | 10
| - | No | The maximum number of concurrent
requests. |
|
+| servicecomb.circuitBreaker.[type].enabled | TRUE
| - | No | Enable circuit breaking or not.
|
|
+| servicecomb.circuitBreaker.[type].forceOpen | FALSE
| - | No | Force circuit breaker to be
enabled regardless of the number of errors. |
|
+| servicecomb.circuitBreaker.[type].forceClosed | FALSE
| - | No | Force circuit breaker to be
disabled. | When forceOpen and forceClose are set at the
same time, forceOpen will take effect. |
+| servicecomb.circuitBreaker.[type].sleepWindowInMilliseconds | 15000
| - | No | How long to recover from a circuit
breaking. | After the recovery, the number of failures will be
reset. Note: If the call fails immediately after a recover, the circuit breaker
is triggered immediately again. |
+| servicecomb.circuitBreaker.[type].requestVolumeThreshold | 20
| - | No | The threshold of failed requests
within 10 seconds. If the threshold is reached, circuit breaker is triggered. |
The 10 seconds duration is splitted evenly into 10 segments for error
calculation. The calculation will start after 1 second. So circuit breakers are
triggered after at least 1 second. |
+| servicecomb.circuitBreaker.[type].errorThresholdPercentage | 50
| - | No | The threshold of error rate. If
the threshold is reached, circuit breaker is triggered. |
|
+| servicecomb.fallback.[type].enabled | TRUE
| - | No | Enable fallback handling or not
|
|
+| servicecomb.fallback.[type].maxConcurrentRequests | 10
| - | No | The max number of concurrent
fallback(specified by servicecomb.fallbackpolicy.policy) calls. When the
threshold is reached, the fallback method is not called by return exception
directly. | |
+| servicecomb.fallbackpolicy.[type].policy | throwexception
| returnnulll \| throwexception | No | The fallback policy when errors
occurred. |
|
**Caution:** Be cautious to set servicecomb.isolation.timeout.enabled to true.
All handlers in the handler chain are asynchronously executed, the intermediate
handlers' return will make the follow-up handlers processing abandoned.
Therefore, we recommend to set servicecomb.isolation.timeout.enabled to be
false(by default) and set the network timeout duration
servicecomb.request.timeout to 30000.
diff --git
a/java-chassis-reference/zh_CN/build-provider/configuration/downgrade-strategy.md
b/java-chassis-reference/zh_CN/build-provider/configuration/downgrade-strategy.md
index 65d851d..1988341 100644
---
a/java-chassis-reference/zh_CN/build-provider/configuration/downgrade-strategy.md
+++
b/java-chassis-reference/zh_CN/build-provider/configuration/downgrade-strategy.md
@@ -46,7 +46,7 @@
servicecomb.isolation.Provider.DemoService.hello.sayHello.timeout.enabled
### 配置项列表
-注意:在下面的表格里面,全部省略type和MicroServiceName。未特殊说明,配置项都支持Provider和Consumer。
+注意:在下面的表格里面,全部省略MicroServiceName。未特殊说明,配置项都支持Provider和Consumer。
例如:对于服务消费者,需要配置为:servicecomb.isolation.Consumer.timeout.enabled
@@ -56,18 +56,18 @@
servicecomb.isolation.Provider.DemoService.hello.sayHello.timeout.enabled
| 配置项 | 默认值 | 取值范围 | 是否必选 | 含义 | 注意 |
| :--- | :--- | :--- | :--- | :--- | :--- |
-| servicecomb.isolation.timeout.enabled | FALSE | - | 否 | 是否启用超时检测 | |
-| servicecomb.isolation.timeoutInMilliseconds | 30000 | - | 否 | 超时时间阈值 | |
-| servicecomb.isolation.maxConcurrentRequests | 10 | - | 否 | 最大并发数阈值 | |
-| servicecomb.circuitBreaker.enabled | TRUE | - | 否 | 是否启用熔断措施 | |
-| servicecomb.circuitBreaker.forceOpen | FALSE | - | 否 | 不管失败次数,都进行熔断 | |
-| servicecomb.circuitBreaker.forceClosed | FALSE | - | 否 | 任何时候都不熔断 |
当与forceOpen同时配置时,forceOpen优先。 |
-| servicecomb.circuitBreaker.sleepWindowInMilliseconds | 15000 | - | 否 |
熔断后,多长时间恢复 | 恢复后,会重新计算失败情况。注意:如果恢复后的调用立即失败,那么会立即重新进入熔断。 |
-| servicecomb.circuitBreaker.requestVolumeThreshold | 20 | - | 否 |
10s内统计错误发生次数阈值,超过阈值则触发熔断 |
由于10秒还会被划分为10个1秒的统计周期,经过1s中后才会开始计算错误率,因此从调用开始至少经过1s,才会发生熔断。 |
-| servicecomb.circuitBreaker.errorThresholdPercentage | 50 | - | 否 |
错误率阈值,达到阈值则触发熔断 | |
-| servicecomb.fallback.enabled | TRUE | - | 否 | 是否启用出错后的故障处理措施 | |
-| servicecomb.fallback.maxConcurrentRequests | 10 | - | 否 |
并发调用容错处理措施(servicecomb.fallbackpolicy.policy)的请求数,超过这个值则不再调用处理措施,直接返回异常 | |
-| servicecomb.fallbackpolicy.policy | throwexception | returnull \|
throwexception | 否 | 出错后的处理策略 | |
+| servicecomb.isolation.[type].timeout.enabled | FALSE | - | 否 | 是否启用超时检测 | |
+| servicecomb.isolation.[type].timeoutInMilliseconds | 30000 | - | 否 | 超时时间阈值
| |
+| servicecomb.isolation.[type].maxConcurrentRequests | 10 | - | 否 | 最大并发数阈值 |
|
+| servicecomb.circuitBreaker.[type].enabled | TRUE | - | 否 | 是否启用熔断措施 | |
+| servicecomb.circuitBreaker.[type].forceOpen | FALSE | - | 否 | 不管失败次数,都进行熔断 |
|
+| servicecomb.circuitBreaker.[type].forceClosed | FALSE | - | 否 | 任何时候都不熔断 |
当与forceOpen同时配置时,forceOpen优先。 |
+| servicecomb.circuitBreaker.[type].sleepWindowInMilliseconds | 15000 | - | 否
| 熔断后,多长时间恢复 | 恢复后,会重新计算失败情况。注意:如果恢复后的调用立即失败,那么会立即重新进入熔断。 |
+| servicecomb.circuitBreaker.[type].requestVolumeThreshold | 20 | - | 否 |
10s内统计错误发生次数阈值,超过阈值则触发熔断 |
由于10秒还会被划分为10个1秒的统计周期,经过1s中后才会开始计算错误率,因此从调用开始至少经过1s,才会发生熔断。 |
+| servicecomb.circuitBreaker.[type].errorThresholdPercentage | 50 | - | 否 |
错误率阈值,达到阈值则触发熔断 | |
+| servicecomb.fallback.[type].enabled | TRUE | - | 否 | 是否启用出错后的故障处理措施 | |
+| servicecomb.fallback.[type].maxConcurrentRequests | 10 | - | 否 |
并发调用容错处理措施(servicecomb.fallbackpolicy.policy)的请求数,超过这个值则不再调用处理措施,直接返回异常 | |
+| servicecomb.fallbackpolicy.[type].policy | throwexception | returnull \|
throwexception | 否 | 出错后的处理策略 | |
> **小心**:
> 谨慎使用servicecomb.isolation.timeout.enabled=true。因为系统处理链都是异步执行,中间处理链的返回,会导致后面处理链的逻辑处理效果丢失。尽可能将servicecomb.isolation.timeout.enabled保持默认值false,并且正确设置网络层超时时间servicecomb.request.timeout=30000。