python - 如果 Flask 入口点失败,让 Amazon ECS 容器退出
问题描述
我正在更新我的 ECS 服务以使用新的任务定义。本例中的任务定义是在 gunicorn 上运行的烧瓶应用程序。
在某些情况下,我希望烧瓶应用程序退出并且随后对 ECS 服务的更新失败。在这种情况下,我想检查数据库连接(如果数据库连接没有运行则退出)。
但是,我没有看到这一点。每当我退出或终止烧瓶应用程序(例如使用 sys.kill 或 os.kill)时,任务定义仍会继续更新。
鉴于我的入口点失败,我如何终止对 ECS 服务的更新?
我也看到了这一点:https ://aws.amazon.com/blogs/containers/graceful-shutdowns-with-ecs/但 SIGTERM 也不起作用。
解决方案
要更新这一点,问题是服务不断崩溃循环。为了解决这个问题,我使用了 ECS 部署断路器:https ://aws.amazon.com/blogs/containers/announcing-amazon-ecs-deployment-circuit-breaker/ ,它允许您退出此循环。
推荐阅读
- android - 从 android 处理程序返回值
- triggers - 问题理解 Salesforce Apex 触发器在内联 SOQL 中的相等性检查
- ethereum - 什么是为以太坊构建去中心化应用程序的起点/模板
- react-native - 世博会图像很慢而且性能不好但是为什么
- php - 如何在php中删除多维数组
- c++ - 结构数组中的十进制浮点数有问题
- mysql - 创建表并使用变量插入
- javascript - 加载页面时将带有 JSON 数据的 Index.html 文件发送回用户?
- pytorch - 如何迭代 PyTorch 张量
- swiftui - 在 SwiftUI 中使用 Introspect 隐藏标签栏时查看调整大小