Download the PHP package wwwision/batch-processing without Composer

On this page you can find all versions of the php package wwwision/batch-processing. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package batch-processing

Wwwision.BatchProcessing

Helpers to execute Flow CLI Commands in parallel using ReactPHP ChildProcess:

Installation

Install this package via:

Usage

Invoke BatchProcessRunner::start() from a Flow CommandController.

Example:

(see full example below)

Custom batch command arguments

By default, the arguments offset and limit will be passed to the batch command. This can be changed via constructor arguments of the BatchProcessRunner, the placeholders {offset} and {limit} can be used:

Render progress bar(s)

The ProgressBarRenderer can be used to output progress bar(s) like shown in the screenshot above:

To allow the individual batches to report their progress and errors, the ProgressPipe can be used:

Specify batch size

By default, the batch size is 500. This means that for a total amount of 1234 tasks the batch command will be called three times with a offset/limit of:

The batch size can be adjusted via BatchProcessRunner::setBatchSize().

Note: The right size for the size of a batch depends greatly upon how long each task will take and how much memory it will consume.

Specify pool size

By default, up to 5 sub processes will be executed in parallel. This can be adjusted via BatchProcessRunner::setPoolSize().

Note: To prevent parallel execution of batches, set the pool size to 1

Handle finished process

Because BatchProcessRunner::start() is executed in a non-blocking way, the following code will not work as expected:

Instead, the BatchProcessRunner::onFinish() callback should be used to finalize the process:

Handle errors

To prevent interrupting the batch processing or messing with the progress bar rendering, errors are not outputted by default. Instead, they can be handled via BatchProcessRunner::onError() callback:

Alternatively, the onFinish() can be used to handle all errors that occurred during the batch processing:

Full example

Contribution

Contributions in the form of issues or pull requests are highly appreciated

License

See LICENSE


All versions of batch-processing with dependencies

PHP Build Version
Package Version
Requires php Version >=7.4
react/child-process Version ^0.6.4
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package wwwision/batch-processing contains the following files

Loading the files please wait ....