开发者社区> 问答> 正文

限流管理如何进行


每一个应用都会提供很多服务。对于这些服务,可以配置限流规则以实现对服务的流控,确保服务能够稳定运行,拒绝超出服务能力的流量。
EDAS 可以从 QPS 和线程两个维度对限流规则进行配置,确保系统在面对流量高峰时以最大的支撑能力平稳运行。


  • [backcolor=transparent]HSF 限流:出现流量高峰时,超出流控规则所定义的流量上限时,一部分调用方将出现 BlockException 错误。根据设定的阈值,在1秒内会有与设置的阈值相同个数的服务调用成功。

  • [backcolor=transparent]HTTP 限流:出现流量高峰时,一部分调用方将被重定向到一个出错页面,实际访问时会跳转到淘宝首页。根据阈值设定,这里也有成功访问到服务的请求。

[backcolor=transparent]注意:限流规则仅适用于服务提供者,对于服务消费者是不能配置的。在配置之前请先确认该应用是否为服务提供者。

添加限流规则


  1. 加入限流规则代码。
    登录 EDAS 控制台,在左侧导航栏中单击 [backcolor=transparent]应用管理,进入应用列表页面,选择一个已部署的服务提供者的应用,进入应用详情页面。

  2. 在应用详情页面左侧导航栏中,选择 [backcolor=transparent]限流降级 > [backcolor=transparent]限流规则。

  3. 在限流规则页面右上角单击 [backcolor=transparent]应用配置说明。

  4. 根据应用配置说明中的步骤示例,添加限流规则代码。

编译并发布应用,具体流程请参考 发布应用
在限流规则页面右上角单击 [backcolor=transparent]添加限流规则。
在添加限流规则对话框中,设置限流规则参数。

限流规则参数说明:
  • [backcolor=transparent]限流类型:分为 HSF 限流和 HTTP 限流。请根据应用的访问类型,选择具体的限流类型。
  • [backcolor=transparent]需要限流的接口:列出了应用中所有的接口。请根据实际情况选择需要限流的接口。
  • [backcolor=transparent]需要限流的方法:针对选择的接口,自动加载接口内所有的方法。可以根据实际情况选择某个方法进行限流,也可以选择对全部方法都进行限流。
  • [backcolor=transparent]被限流的应用:此时列表中将加载除当前应用以外的所有应用,因为每一个应用都可能会访问当前应用。请根据实际情况,选择被限流的应用。
  • [backcolor=transparent]限流粒度:主要分为 QPS 限流和 Thread 限流。QPS 限流表示对请求中每秒请求次数的限制;Thread 限流是对线程数的限制。一般来讲线程越大则 QPS 越大,但是一个线程的 QPS 一般都会 >1,因为一个线程会持续发请求,请求的响应时间一般就几十毫秒。
  • [backcolor=transparent]限流阈值:高于阈值时将触发限流动作。

设置完成后,单击 [backcolor=transparent]确定。

管理限流规则


在 [backcolor=transparent]限流降级规则页面,在相应的限流规则右侧的操作列中,单击 [backcolor=transparent]编辑、[backcolor=transparent]停用、[backcolor=transparent]启用 或 [backcolor=transparent]删除 等按钮,可以对限流规则进行管理。

展开
收起
猫饭先生 2017-10-26 10:28:58 1727 0
0 条回答
写回答
取消 提交回答
问答排行榜
最热
最新

相关电子书

更多
阿里云容器 AHAS Sentinel 网关流控揭秘 立即下载
基于流量的灰度发布和自动弹性实践 立即下载
流量太大容易挂?接入 Sentinel 让 N 个 9 成为可能! 立即下载