pda/pheanstalk (v4): Mature, actively maintained Beanstalkd client.symfony/console: CLI tools for queue management (e.g., bin/console angle:pheanstalk:stats).beanstalkd-monit) for resilience.json_encode()/json_decode() or a library like symfony/serializer.pda/pheanstalk library directly.KernelEvents (e.g., kernel.terminate for post-request jobs).job.reserved, job.deleted) via Psr\Log.PheanstalkEvents (e.g., job.reserved) for custom logic.beanstalkd:1.18).11300).composer require anglemx/pheanstalk-bundle
config/packages/angle_pheanstalk.yaml:
angle_pheanstalk:
clients:
default:
host: "beanstalkd"
port: 11300
tubes:
- "high_priority"
- "low_priority"
PheanstalkInterface into services/controllers.beanstalkd-watch).pda/pheanstalk is low-maintenance (last release: 2023).beanstalkd-stat and angle:pheanstalk:stats for diagnostics.debug: true in config for verbose logging.timeout in config (default: 0 = no timeout).beanstalkd’s max-job-time (default: 120s).beanstalkd-proxy).| Failure Scenario | Impact | Mitigation |
|---|---|---|
| Beanstalkd process crash | Jobs lost in-flight | Use persistent storage (e.g., DB + retry) |
| Network partition | Workers starve | Implement exponential backoff in workers |
| Disk full (Beanstalkd) | Jobs rejected | Monitor disk usage; set max-file-size |
| Symfony app crash | Unprocessed jobs | Use cron-based workers for resilience |
| Job timeout | Job deleted prematurely | Increase beanstalkd’s max-job-time |
How can I help you explore Laravel packages today?