【问题标题】:AWS Fargate delayAWS Fargate 延迟
【发布时间】:2021-04-07 03:14:50
【问题描述】:

我们使用 AWS Fargate 通过我们的 API 每天仅处理大约 700 个请求,没有数据库或任何其他外部依赖项。

大多数情况下它运行良好并且响应充分,但有时响应需要 10 秒,我们会收到请求超时。我们已经检查了所有内容,只有 1 个假设,我们想检查它是否可以发生。

我们的假设是 Fargate 会在没有请求时取消分配所有资源,有时容器恢复运行可能需要一段时间。会不会是这个原因?

【问题讨论】:

  • “我们的假设是 Fargate 在没有请求时取消分配所有资源,有时容器恢复运行可能需要一段时间。这可能是原因吗?”不,这不是 Fargate 的工作方式。在任务运行的整个过程中,您指定的全部资源(CPU 和 RAM)都是保留的。

标签: amazon-web-services aws-fargate


【解决方案1】:

当您使用 Fargate 启动任务时,我们会分配容量并且在任务停止之前永远不会释放它。所以你的假设不是根本原因。考虑到 Fargate 任务可能需要大约 30/40 秒才能启动(可能更多取决于图像大小),因此它看起来不像您所看到的(10 秒延迟)是任务启动的症状。如果您为集群启用了 CloudWatch Container Insights,您可以尝试在看到延迟/超时时查看是否有任何特定活动(峰值、正在部署的任务等)。假设这是一个可伸缩的 ECS 服务,我想知道当您遇到此问题时是否正在执行任何特定活动。如果没有其他元素,很难提出任何建议,但您的理论肯定不是正在发生的事情。

【讨论】:

  • 感谢详细解答,我今天去看看cloudwatch。没有执行任何辅助活动,我的下一个假设是,当它由现场实例支持时,它们可能处于起始阶段。
  • 按需实例和现场实例之间的停止/启动机制并没有那么不同,但现场实例可能会更突然地停止,并且可能与您的超时有关正在看(尽管这不是我的第一选择)
猜你喜欢
  • 2013-12-22
  • 2018-01-09
  • 2018-08-05
  • 2016-06-21
  • 2019-04-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多