Redis
 sql >> Base de Dados >  >> NoSQL >> Redis

Cancelar uma tarefa já em execução no Python RQ?


Se você tiver a instância do job em mãos, simplesmente
job.cancel()

Ou se você pode determinar o hash:
from rq import cancel_job
cancel_job('2eafc1e6-48c2-464b-a0ff-88fd199d039c')

http://python-rq.org/contrib/

Mas isso apenas o remove da fila; Eu não sei se ele vai matá-lo se já estiver em execução.

Você pode fazer com que ele registre o tempo de parede e verifique-se periodicamente e gere uma exceção/autodestruição após um período de tempo.

Para manual, estilo ad-hoc, morte:Se você tiver redis-cli instalado, você pode fazer algo drástico, como filas e trabalhos de flushall:
$ redis-cli
127.0.0.1:6379> flushall
OK
127.0.0.1:6379> exit

Ainda estou vasculhando a documentação para tentar descobrir como fazer um kill de precisão.

Não tenho certeza se isso ajuda alguém, pois a pergunta já tem 18 meses.