创建OLC服务
本文介绍如何创建流控服务。
前提条件
需要具备AppStage服务运维岗位权限,权限申请操作请参见申请权限。
操作步骤
- 进入运维中心工作台。
- 在顶部导航栏选择自有服务。
- 单击,选择 。
- 选择左侧导航栏的 。
- 单击“创建服务”,配置相关参数,参数说明如表1所示。
- 单击“保存”。
创建完成后,流控服务列表中生成一条流控服务记录,发布状态为“待发布”。
- 单击服务名称,进入流控服务详情页面。
- 选择“资源列表”页签,单击“新增资源”,配置相关参数,单击“确定”。参数说明如表2所示。
- 选择“流控规则”页签,单击“新增流控规则”,配置相关参数,单击“确定”。参数说明如表3所示。
表3 新增流控规则参数说明 参数
说明
限流控制类型
- 资源流控
- 全局参数
- 节点级动态流控
当限流控制类型为资源流控/全局参数时,参数说明如下:
资源名称
当限流控制类型为资源流控时,选择关联的资源名称,与微服务/接口绑定,每个资源最多创建4条规则,规则的限流控制类型和是否集群流控不能重复。
参数名称
当限流控制类型为全局参数流控时,填写参数名称。
流控类别
- QPS:每秒速率流控。
- 配额:特定时间的请求阈值。
限流阈值
流控阈值,整个微服务/接口调用总量的阈值,如果请求总量超过该阈值,后续请求会被流控;0表示不流控。
禁用时间
当限流控制类型为QPS时,显示该参数。
流控后禁用时间内的所有请求不再判断请求量,直接全部流控。
允许的突增量
当限流控制类型为QPS时,显示该参数。
流控突发量,该参数可以调整令牌桶的大小,令牌桶大小为(阈值+突增量)/时间窗口,时间窗口单位为s。
是否集群限流
选择“是”或“否”。开启后对集群内此资源的调用总量进行限制。
集群限流阈值模式
当流控类别为QPS,开启集群限流时,显示该参数。
- 单机均摊
- 总体阈值
本地配额缓存数
当流控类别为配额,开启集群限流时,显示该参数。
防止DCS热点key的参数,可以减少DCS的访问,默认值为5。
该参数需要合理配置,配置过小容易造成热点key问题,配置过大可能导致部分节点放通部分节点流控的问题。
时间窗口
填写时间,单位为秒,表示间隔多少秒允许一个请求通过。默认为1秒,取值范围为1~86400。
是否开启流控规则
选择是否开启流控规则。
新增参数
单击“新增参数”,可以根据需要新增多条流控规则。
单击新增参数列表前的,单击“新增参数值”,可以为参数配置多条参数值。
当限流控制类型为节点级动态流控时,参数说明如下:
是否开启流控规则
选择是否开启流控规则。
CPU过载阈值
CPU过载阈值,区间大小:[0.0-1.0],支持精度为小数点后四位。
CPU恢复阈值
CPU恢复阈值要小于CPU过载阈值,区间大小:[0.0-1.0],支持精度为小数点后四位。
最低放通比例
配置各个接口等级对应的最低放通比例,区间大小:[0.0-1.0],支持精度为小数点后四位。
- 选择“黑白名单”页签,单击“新增黑白名单”,配置相关参数,单击“保存”。参数说明如表4所示。
- 选择“熔断规则”页签,单击“新增熔断规则”,配置相关参数,单击“保存”。参数说明如表5所示。
表5 新增熔断规则参数说明 参数
说明
资源名称
与微服务/接口绑定,每个资源最多创建4条规则,规则的熔断模式不能重复。
开启熔断规则
选择是否开启熔断规则。
熔断模式
- 直接失败:所有请求都熔断。
- 平均响应时间:当检测时间窗口内持续进入5个请求,每个请求对应时刻的平均响应时间(毫秒级)均超过阈值,资源进入熔断降级状态,那么在接下的时间窗口之内,对这个方法的调用都会自动地熔断。
- 异常比例:当检测时间窗口内资源的请求量>=请求量阈值(默认为5),并且检测时间窗口内异常总数占通过量的比值超过阈值之后,资源进入熔断降级状态,即在接下的时间窗口之内,对这个方法的调用都会自动地返回。
- 异常数:当资源在检测时间窗口内的异常数目超过阈值之后会进行熔断。
熔断时间窗口
熔断持续的时间窗口,单位为秒,取值范围5~86400。
平均响应时间
当熔断模式为平均响应时间时,配置时间,单位为ms。
异常比例
当熔断模式为异常比例时,配置异常比例,取值范围为0.0~1.0。
异常数
当熔断模式为异常数时,配置异常数。
单位时间窗口
熔断持续的时间窗口,单位为秒。
熔断检测的时间窗口,单位为秒。
须知:由于熔断降级是根据整个检测时间窗口内的统计指标来判断是否进行熔断降级,如果时间窗口比熔断降级持续时间要大,则结束熔断状态后仍可能再进入熔断状态。
熔断结束后检测次数
熔断结束后的试探次数,默认为10,熔断器为HALF_OPEN时进入试探状态,允许一定数量的请求通过,然后重新计算单位时间窗口内请求的熔断指标是否超过阈值;对于异常数模式,如果试探次数小于配置的异常数阈值,那么只有所有试探请求都异常时才重新进入熔断状态。
连续失败梯度
连续失败是指接口失败进入熔断阶段,熔断结束后进入试探阶段,试探结束后接口依然失败,又进入熔断阶段,连续失败时熔断持续时间按照该梯度递增,试探阶段试探次数按照该梯度递减,比如如果梯度为0.1,初始熔断持续时间为10秒,试探次数为10次,比如第二次熔断持续时间为11秒,试探次数为9次。
最大梯度次数
连续失败次数达到最大梯度次数后,熔断持续时间和试探次数保持不变,不再递增或递减。连续失败梯度有值时才起作用,默认值为10。
请求量阈值
当熔断模式为平均响应时间和异常比例时,可以选择配置。
只有当检测时间窗口内的请求数目不小于该阈值时,才开始计算平均响应时间和异常比例,该阈值在熔断结束后的试探状态不生效。平均响应时间模式下,请求量阈值默认为1,异常比例模式下,默认值为5。
更多操作
操作 |
说明 |
---|---|
发布流控服务 |
|
编辑流控服务 |
单击流控服务列表操作列的“编辑”,在弹出的编辑窗口,单击认证密钥后的“重置”,可以重置认证密钥。 |
删除流控服务 |
单击流控服务列表操作列的“删除”,在弹出的提示框中单击“确定”,即可删除服务。 |
查看流控服务详情 |
单击流控服务名称,在流控服务详情页面,查看服务详情。 |