【发布时间】:2018-12-05 00:43:40
【问题描述】:
我目前正在尝试开发一个应用程序,该应用程序严重依赖于处理长时间运行(1 - 168 小时)的后台作业的 heroku 工作人员(执行 NodeJS 脚本,在此处无法切换到 Ruby/Rails)。我的问题是某些工作可能会在 1 小时内完成,而其他工作可能需要 168 小时,而且我不想等到我所有的工人都完成后才开始缩减规模,因为 Heroku 会按每个工人的那段时间向我收费.
我对每天重新启动一次 dynos 没有任何问题,但我想知道是否有可能(以及如何)通过 Heroku API 或任何其他方式(可能从内部)缩减特定的 Heroku 工作人员工作进程本身,虽然从内部终止进程似乎只会导致工作进程重新启动,而不是缩小自身)。
如果这是不可能的,那么我想知道是否有人知道如何捕获“缩小事件”(即,是否有一些信号发送到要缩小的随机工作人员,如 SIGTERM 或 SIGKILL? )。
任何建议都值得赞赏。
【问题讨论】:
标签: heroku scaling worker dyno hirefire