速率限制
通过速率限制中间件控制每秒请求数量
HTTP中间件速率限制HTTP中间件允许您限制每秒HTTP请求的最大数量。通过速率限制,您可以保护应用程序免受拒绝服务(DoS)攻击的影响。DoS攻击可能由恶意第三方发起,也可能由于软件错误(即所谓的“友军火力”DoS攻击)而发生。
组件格式
在以下定义中,每秒最大请求数被设置为10:
apiVersion: dapr.io/v1alpha1
kind: Component
metadata:
name: ratelimit
spec:
type: middleware.http.ratelimit
version: v1
metadata:
- name: maxRequestsPerSecond
value: 10
规格元数据字段
字段 | 详情 | 示例 |
---|---|---|
maxRequestsPerSecond |
每秒允许的最大请求数,基于远程IP。 组件通过 X-Forwarded-For 和X-Real-IP 头来识别请求者的IP。 |
10 |
一旦达到限制,请求将返回HTTP状态码429: Too Many Requests。
重要
速率限制是在每个Dapr sidecar中独立执行的,而不是在整个集群范围内统一执行。此外,您还可以使用最大并发设置来限制应用程序的请求处理能力,这种方法适用于所有流量,不论远程IP、协议或路径。
Dapr配置
apiVersion: dapr.io/v1alpha1
kind: Configuration
metadata:
name: appconfig
spec:
httpPipeline:
handlers:
- name: ratelimit
type: middleware.http.ratelimit
相关链接
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.