速率限制

📘

注:

目前每个账号每天请求总量为10万(请求总量后期会根据相关需求进行调整)。

为了保证请求资源的合理分配,访问Trongrid服务的所有请求都建议带参数API Key。Trongrid针对所有用户的访问有如下速率限制:

  1. 用户使用API Key,并且使用量没有超过一天的总量,则每秒访问频率限制在20qps,超过这个限制,就会拒绝访问,并返回503错误。
  2. 用户使用API Key,并且使用量超过了一天的总量,则每秒的频率会限制在一个很低的值,例如5qps,超过这个限制就会拒绝访问,并返回503错误。
  3. 如果用户未使用API Key,则trongrid会进行动态限速,一旦访问频率超出了速率限制,则trongrid会采取惩罚机制,短暂拉黑30秒,并返回403错误,30秒后解除拉黑。

如何判断是否受到速率限制?

如果受到速率限制,那么您的请求返回中将具有HTTP状态代码4xx或者5xx,并包含错误信息,您可以根据相应的错误信息进行调整。

{
    “success”: false,
    “error”: “The key exceeds the frequency limit(15), and the query server is suspended for 30s”,
    “statusCode”: 403
}
{
    “Error”: “The key exceeds the frequency limit(30), and the query server is suspended for 30s”
}

如果速率受限怎么办?

如果您一直受到速率限制,请考虑以下一些解决方法:

  • 确保您在URL中使用API Key。没有API Key的请求将受到严格的速率限制,甚至被完全拒绝。
  • 在Dapp启动时限制请求次数。
  • 不要时时轮训Trongrid,因为TRON网络3s左右出一个块,因此以更快的速度请求新数据通常是没有意义的。