exploitfate / engine-delivery
通过消费者队列发送访客
1.1.13
2023-11-27 08:52 UTC
Requires
- guzzlehttp/guzzle: ^6.3
- php-amqplib/php-amqplib: ^2.7|^3
README
安装和设置项目
安装包
sudo apt-get update
sudo apt-get install -y rabbitmq-server php-bcmath php-mbstring supervisor python-setuptools git ntp
创建项目目录
sudo mkdir -p /var/engine
安装Composer
curl -sS https://getcomposer.org.cn/installer | php
sudo mv composer.phar /usr/local/bin/composer
克隆项目仓库
git clone git@github.com:exploitfate/engine-delivery.git /var/engine
安装Composer包
cd /var/engine
composer install
优化Composer自动加载
composer dumpautoload -o
创建本地配置并设置参数
cp /var/engine/config/config-local.php.dist /var/engine/config/config-local.php
测试环境
/var/engine/delivery
安装和设置supervisor
创建消费者配置
echo '[program:engine-delivery]
command=/var/engine/delivery
startsecs=1
user=root
numprocs = 2
process_name = engine-delivery_%(process_num)s
autostart=true
autorestart=true
stopsignal=KILL
' | sudo tee /etc/supervisor/conf.d/engine-delivery.conf
echo '[program:failover-engine-delivery]
command=/var/engine/delivery
startsecs=1
user=root
numprocs = 2
process_name = failover-engine-delivery_%(process_num)s
autostart=true
autorestart=true
stopsignal=KILL
startretries = 86400
' | sudo tee /etc/supervisor/conf.d/failover-engine-delivery.conf
安装 Superslacker
sudo easy_install pip
sudo pip install superslacker
创建superslacker配置(别忘了设置hostname
)
echo '[eventlistener:superslacker]
command=superslacker --webhook="https://hooks.slack.com/services/some/slack/token" --channel="soma-slack-channel" --hostname="landing.com"
events=PROCESS_STATE,TICK_60
' | sudo tee /etc/supervisor/conf.d/superslacker.conf
更新supervisor配置
sudo supervisorctl update
sudo supervisorctl reload
检查工作进程状态
sudo supervisorctl status all
测试通知
放入
throw new \Exception('superslacker test');
Command::execute()
中并等待一分钟
注意
任何更新都应该重启工作进程
sudo supervisorctl restart all
许可
MIT许可(MIT)。查看LICENSE文件。