在重启或崩溃时保留 beanstalkd 队列

Preserve beanstalkd queue on restart or crash

我正在使用 beanstalkd 来管理队列。我刚刚意识到,如果队列中有作业并且 beanstalkd 进程重新启动或崩溃,那么该作业将永远丢失(或者我认为如此)。

有没有办法在 beanstalkd 失败或重启时保留队列中的作业?如果不是,确保工作永不丢失的最佳做法是什么?

Beanstalkd 可以使用 -b (binary log) 选项启动,beanstalkd 会将所有作业写入 binlog。如果断电,您可以使用相同的选项重新启动 beanstalkd,它将恢复日志的内容。