Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Job Server Bundle Laravel Package

abc/job-server-bundle

Symfony bundle for asynchronous distributed job processing via php-enqueue. Supports jobs, batches, sequences, free composition, status tracking, cancellation/restart, cron jobs (with AbcSchedulerBundle), plus a JSON REST API, PHP client, and OpenAPI docs.

View on GitHub
Deep Wiki
Context7

AbcJobServerBundle

Build Status

A symfony bundle for asynchronous distributed job processing using php-enqueue as transport layer.

Note: This project is still experimental!

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
  • Cron jobs (requires AbcSchedulerBundle 2.x)
  • JSON REST-Api & PHP client library
  • OpenApi documentation

Demo

You can find a demo here.

Installation

composer install abc/job-server-bundle

Getting Started

Prerequisites

  • EnqueueBundle is configured with a transport layer

Steps

  1. In case you configured a transport with a key different that default you have to configure this transport also for the AbcJobServerBundle

    abc_job_server:
        transport: my_transport_name
    
  2. Create database and database schema

    bin/console doctrine:database:create
    bin/console doctrine:schema:create
    
  3. Start the command that processes replies from workers

    bin/console abc:process:reply someReplyQueue
    
  4. Create an application that will consume jobs using the AbcJobWorkerBundle that will process jobs.

Configuration Reference

abc_job_server:

    # the enqueue transport name
    transport: default
    
    # whether to enable the cronjob component
    cronjob:
        enabled: true
    
    # whether to enable the endpoints to cleanup jobs, and cronjobs
    cleanup:
        enabled: true

Commands

Command abc:broker:setup

The command abc:broker:setup declares queues at the broker for all registered routes.

bin/console abc:broker:setup --help

Command abc:reply:process

The command abc:reply:process processes job replies from queues, updates job information and schedules dependant jobs

bin/console abc:reply:process --help

License

The MIT License (MIT). Please see License File for more information.

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
oxygen/auth
relicsoftware/barakah-payment-gateway
tobya/work-with-composer
equipc/laravel-email-validator
equipc/laravel-email-database-log
adedsec/nova-translated-labels
wazza/laravel-db-encryption
hokny/laravel-generator
vonsogt/backup
jengo/queues
jeremykenedy/laravel-observability
coleus/frame
thtg88/journalism
filagora/filagora-ai-forums
rlacerda83/query-parser
socialdept/atp-orm
cboxdk/laravel-assistant-client
socialdept/atp-resolver
socialdept/tenant-domains
tautvydasr/blade-class-names