Skip to content
kriswallsmithPublic

About

Experimental library for forking PHP

Resources

Stars

583 stars

Watchers

32 watching

Forks

Latest commit

 

History

99 Commits

Folders and files

Repository files navigation

Build Status

Spork: PHP on a Fork

<?php

$manager = new Spork\ProcessManager();
$manager->fork(function() {
    // do something in another process!
    return 'Hello from '.getmypid();
})->then(function(Spork\Fork $fork) {
    // do something in the parent process when it's done!
    echo "{$fork->getPid()} says '{$fork->getResult()}'\n";
});

Example: Upload images to your CDN

Feed an iterator into the process manager and it will break the job into multiple batches and spread them across many processes.

<?php

$files = new RecursiveDirectoryIterator('/path/to/images');
$files = new RecursiveIteratorIterator($files);

$manager->process($files, function(SplFileInfo $file) {
    // upload this file
});

About

Experimental library for forking PHP

Resources

Stars

583 stars

Watchers

32 watching

Forks

Releases

Packages

Used by

Contributors

Languages