Supervisor Process Management
This machine uses Supervisor to manage processes for multiple projects. Configuration files are located in /usr/local/etc/supervisor.d/.
Factory Project (~/Funnlink/InnoShop/Factory)
| Process | Config File | Description | Port |
|---|---|---|---|
| redis | redis.ini | Redis service (shared) | 6379 |
| factory-horizon | factory-horizon.ini | Queue management (Laravel Horizon) | - |
| factory-reverb | factory-reverb.ini | WebSocket service (Laravel Reverb) | 8080 |
| factory-scheduler | factory-scheduler.ini | Scheduled task runner | - |
innoshop.cn Project (~/Funnlink/InnoShop/Official/innoshop.cn)
| Process | Config File | Description | Port |
|---|---|---|---|
| innocn-horizon | innocn-horizon.ini | Queue management (Laravel Horizon) | - |
| innocn-reverb | innocn-reverb.ini | WebSocket service (Laravel Reverb) | 8081 |
| innocn-scheduler | innocn-scheduler.ini | Scheduled task runner | - |
Prerequisites
Both projects require the following in their .env:
QUEUE_CONNECTION=redisBROADCAST_CONNECTION=reverb
Common Commands
bash
supervisorctl status # View status of all processes
supervisorctl restart all # Restart all processes
supervisorctl restart factory-horizon # Restart Factory queue
supervisorctl restart innocn-horizon # Restart innoshop.cn queue
supervisorctl stop all # Stop all processes
supervisorctl start all # Start all processes
supervisorctl tail factory-horizon # View real-time logsLog Locations
Process logs are stored in each project's storage/logs/ directory:
- Factory:
storage/logs/{horizon,reverb,scheduler}.log - innoshop.cn:
storage/logs/{horizon,reverb,scheduler}.log - Redis:
Factory/storage/logs/redis.log
Notes
schedule:workis a persistent process and does not require a system crontab- For production, it is recommended to use crontab +
schedule:runinstead ofschedule:work - Horizon dashboard URL:
http://your-domain/horizon - The two projects use different Reverb ports: Factory uses 8080, innoshop.cn uses 8081
- Redis is shared and only needs one instance