如何解决使用JOB-ID的Redis队列杀死作业
我使用Python Flask + Redis,并使用以下代码将作业排入redis队列:
with Connection(redis.from_url("redis://localhost:6379")):
queue = Queue()
task = queue.enqueue(self.redis_method,job_timeout=86400,result_ttl=604800,failure_ttl=604800)
response_object = {"status": "success","data": {"task_id": task.get_id()}}
return response_object
工作正在排队,执行开始,我得到排队工作的Job-id。并使用下面的代码杀死Job,但即使在执行下面的代码后执行也不会停止
cancel_job(job_id=job_id,connection= redis.from_url("redis://localhost:6379"))
任何帮助表示赞赏。在此先感谢〜
解决方法
cancel_job
从队列中删除作业。如果它已经在执行过程中,你必须杀死这个工人。
from rq.command import send_kill_horse_command
send_kill_horse_command(connection,worker_name)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。