【发布时间】:2019-01-26 18:26:20
【问题描述】:
作为Linux 和 Bash 菜鸟,如果问题太基本或缺少某些关键信息,我们深表歉意。
基本上,我使用python-celery library(带有redis代理)来并行处理一些大量的json文件。
现在,我实现这一点的方法是(如果有更好的方法,请告诉我)
1号航站楼
$celery worker -A celery_worker -l info -c 64 #To start the celery worker service which listens for input
2号航站楼
$./pythonScript.py arg1 arg2 #Script to call the service
在终端 2 中完成任务后,我通过 Ctrl+C 向终端 1 发送键盘中断,然后工作人员关闭。
但是我如何通过在终端中运行单个 bash 脚本来完成整个事情,即启动 celery_worker 服务,运行 python 脚本,然后关闭工作程序?
作为肮脏的解决方法,我可以让工作程序运行24*7 而无需关闭工作程序,并且只要我需要服务就使用 python 脚本。但我相信这会浪费内存,而且芹菜工人有一种恼人的倾向,就是一段时间后会自行关闭。
我还需要将整个过程添加到每日 cron 作业中。
【问题讨论】:
标签: python-3.x bash celery tmux keyboardinterrupt