You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@servicecomb.apache.org by li...@apache.org on 2020/02/10 01:40:23 UTC
[servicecomb-docs] branch master updated: [SCB-1471]: Make the
config items description about fallback policy clearer (#114)
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 <sh...@gmail.com>
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。