---
title: "流控限制"

doc_type: static
doc_category: static
doc_version: v20270301
source_url:
  html: 'https://developer.shopline.com/zh-hans-cn/docs/apps/api-instructions-for-use/rest-admin-api/flow-control'
  md: 'https://developer.shopline.com/zh-hans-cn/docs/apps/api-instructions-for-use/rest-admin-api/flow-control.md'
---
# 流控限制

REST Admin API 对每个应用下每个店铺的请求进行了速率限制，每秒最多允许 4 个请求。

| **接口类型**   | **限速算法** | **限速规则**                               |
| -------------- | ------------ | ------------------------------------------ |
| REST Admin API | 漏桶算法     | 每个应用下的每个店铺为 4 QPS，桶大小：40。 |

------

## 限流算法与规则

REST Admin API 受到流量控制，你需要在应用中按店铺合理控制 API 的并发请求频率。速率限制基于应用和店铺的组合维度进行独立计算：

- **应用维度隔离**：单个应用的调用请求不会影响其他应用的速率限制，即使它们访问的是同一个店铺。
- **店铺维度隔离**：对单个店铺发起的调用请求不会影响其他店铺的速率限制，即使这些请求来自同一个应用。

REST Admin API 采用漏桶算法进行流控，具体规则如下：

- **恒定速率**：漏桶以每秒 4 个请求（4 QPS）的固定速率处理请求。
- **突发处理**：桶的最大容量为 40。当桶内仍有可用容量时，新请求会进入桶中排队，并按 4 QPS 的速率依次执行。
- **请求拒绝**：当漏桶已满（排队的请求数达到 40），且新请求的到达速率仍超过泄漏速率时，后续请求将被直接拒绝。

> **注意**
>
> 为避免受到限制，建议你将应用内的平均请求速率控制在每秒 4 个请求以内。


------

## 触发限流的错误响应

当漏桶容量已满且请求速率超过流控限制时，后续的所有请求都会被拒绝，并返回以下错误响应：

- HTTP 状态码：`429 Too Many Requests`
- 错误响应示例：

```plain
HTTP/1.1 429 Too Many Requests
{"errors":"Too many request"}
```

当足够的请求从漏桶中完成泄漏并释放出容量后，后续的请求才会再次成功执行。关于更详细的错误码定义与对应的进一步操作建议，参考 [HTTP 状态码](https://developer.shopline.com/zh-hans-cn/docs/apps/api-instructions-for-use/http-status-code.md)。