如何为RQ工作者重新执行心跳?

时间:2019-05-24 22:57:30

标签: heroku redis python-rq

我正在编写一个使用RQ进行工作的应用程序。 RQ的Redis实例在Heroku中,但RQ工作者在外部计算机上。他们开始时会建立Redis连接。

如果Heroku移动Redis实例(它可以并且可以移动),那么工作人员将陷入困境,即与不再存在的Redis实例的连接,而与新实例的连接。

我可以使用API​​从heroku获取redis URL,但是如何让工作人员重新连接?

我正在考虑在启动时获取Redis URL,然后有一个后台线程每N分钟ping通Redis服务器,并在无法与Redis对话时退出。

由于我将有一个流程监控器(马戏团,主管等),因此它将重新启动工作进程。

这合理吗?在Heroku之外运行RQ工作者是否有更常见的最佳实践,但是在Heroku内运行Redis实例?

就此而言,似乎Heroku上的RQ工人必须处理同样的问题。

0 个答案:

没有答案