如何解决429 速率超出响应无明显原因
我们使用 Contentful 来管理 CMS 内容。当您在 Contentful 中保存内容时,它会为我们在 Cloud Run 上设置的服务发送网络钩子,从而确保构建和部署更新的内容。
此设置以前是这样的,因此 Cloud Run 服务被限制为最多 1 个容器,并发请求数限制为 80。这对于我们偶尔获得的少数 webhook 来说应该足够了。
现在,在调试有关内容未更新的投诉时,我遇到了一个非常持久且令人恼火的问题 - Google Cloud Run 不会尝试处理 Contentful 发送的 2 个 webhook,而是响应状态为 {{1 }} 和 429
在响应正文中。
此响应不是来自我们的后端,我可以在 Cloud Run Rate exceeded.
标签中看到 Google 生成的消息:Logs
我试过了:
- 将容器上的进程数从 1 增加到 2 - 由于使用异步框架,应该没有必要
- 将容器数量从 1 个增加到 2 个
Contentful 的 webhook 问题仍然存在。
如果我尝试使用 The request was aborted because there was no available instance.
从我的本地计算机发出请求,默认为 200 个请求和 50 个并发,它们都会通过,而不会返回任何 hey
状态代码。
当特定客户端(在本例中为 Contentful)仅快速连续发出 2 个请求时,发生了什么会生成 429
状态代码?我们如何禁用或绕过这种行为?
429
为我提供了这些部署的详细信息:
gcloud run services describe <name>
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。