【发布时间】:2017-02-13 16:13:43
【问题描述】:
我正在尝试在我的 Flask 应用程序所需的弹性 beanstalk 上运行 huey 任务队列。但是没有内置的方式将huey作为守护进程运行。 huey 的作者建议使用 supervisor (this link) 运行 huey,并且由于弹性 beanstalk 已经使用了主管,我认为我们可以添加由主管管理的程序。但我不确定如何以编程方式执行此操作。目前,我正在使用配置文件中的container_commands (ref link) 键来运行它,但是弹性beantalk 在一段时间后在前台运行时给了我一个超时错误。下面是我正在使用的配置文件。
packages:
yum:
gcc: []
gcc-c++: []
gcc-gfortran: []
htop: []
make: []
wget: []
atlas-devel: []
lapack-devel: []
commands:
01enable_swap:
command:
- sudo dd if=/dev/zero of=/var/swap1 bs=1M count=1024
- sudo mkswap /var/swap1
- sudo chmod 644 /var/swap1
- sudo swapon /var/swap1
cwd: /home/ec2-user
02install_redis:
command:
- wget "http://download.redis.io/redis-stable.tar.gz"
- tar -xvzf redis-stable.tar.gz
- rm redis-stable.tar.gz
- cd redis-stable
- sudo make
- sudo make install
cwd: /home/ec2-user
container_commands:
01download_nltk_packages:
command: "python install_resources.py"
02run_redis:
command: "redis-server --host 127.0.0.1 --port 6379 --daemonize yes"
03run_huey:
command: "huey_consumer jupiter.huey"
这是我想要实现的目标:
1. 部署我的 Flask 应用程序时,huey 应该作为后台进程运行。
2. supervisor应该处理huey进程的自动启动/停止。
【问题讨论】:
标签: python amazon-web-services amazon-ec2 amazon-elastic-beanstalk python-huey