abc / job
A PHP library for asynchronous distributed job processing
Installs: 9 502
Dependents: 2
Suggesters: 0
Security: 0
Stars: 2
Watchers: 4
Forks: 1
Open Issues: 0
Requires
- php: ^7.2
- ext-json: *
- abc/api-problem: ^0.1
- guzzlehttp/guzzle: ^6.0|^7.0
- justinrainbow/json-schema: ^5.0
- myclabs/php-enum: ^1.6
- psr/log: ^1.1
- symfony/property-access: ^4.3|^5.1
- symfony/uid: ^4.3|^5.1
Requires (Dev)
- abc/scheduler: ^0.2
- doctrine/collections: ^1.6
- doctrine/orm: ^2.6
- enqueue/amqp-bunny: ^0.10
- enqueue/enqueue: ^0.10
- phpunit/phpunit: ^8.0|^9.0
- symfony/config: ^4.3|^5.1
- symfony/console: ^4.3|^5.1
- zircote/swagger-php: ^3.0
README
A PHP library for asynchronous distributed job processing using php-enqueue as transport layer.
Note: This project is still experimental!
Features
This library provides the following features:
- Asynchronous distributed processing of
- Job: a single job
- Batch: multiple jobs that are processed in parallel
- Sequence: multiple jobs processed in sequential order
- Free composition of Job, Sequence, and Batch
- Status information about jobs
- Cancellation and restarting of jobs
- Scheduled processing of jobs (requires AbcSchedulerBundle 2.x)
- JSON REST-Api & PHP client library
- OpenApi documentation
Installation
composer require abc/job
Demo
You can find a demo here.
License
The MIT License (MIT). Please see License File for more information.