0

语境:

我目前有一个 Python Flask 应用程序,当收到请求时,它会自动创建一个 Kubernetes 作业来运行一个进程。作业完成后,它将结果回传到特定端点(永不更改)。根据请求的具体情况,此过程的长度(时间)和资源需求可能会有很大差异。我为此使用 Jobs 的原因是它们能够在失败时重新启动。

问题:

即使允许最大重新启动,有时该过程也会出错。我想按照以下方式实现一些东西:

  • 如果作业成功完成,则什么也不做。
  • 如果在达到最大重试次数后作业失败,则运行foo()

foo()是一个非常简单的 Python 函数,它将发送带有导致作业未成功完成的请求参数的 HTTP 请求。它不一定是 Python 函数,但它是首选。

注意:我将作业需要执行的 python 函数中的所有内容都包装在一个广泛的错误异常中,但是,有时作业可能会由于内存不足而失败。

4

1 回答 1

-1

为什么不在您的集群、knative 或 kubeless 或其他解决方案中实施无服务解决方案。

于 2020-08-06T07:54:07.600 回答