Jonk::Cookbook::ForkModel - with Parallel::Prefork.
prefork worker script:
#! perl use strict; use warnings; use Parallel::Prefork; use DBI; use Jonk::Worker; use Your::Worker; my $pm = Parallel::Prefork->new({ max_workers => 10, trap_signals => { TERM => 'TERM', HUP => 'TERM', }, }); while ($pm->signal_received ne 'TERM') { $pm->start and next; my $dbh = DBI->connect('dbi:mysql:test','user','pass'); my $jonk = Jonk::Worker->new($dbh => {functions => [qw/worker_key/]}); while (1) { if (my $job = $jonk->dequeue) { Your::Worker->work($job); } else { sleep(3); # wait for 3 sec. } } $pm->finish; } $pm->wait_all_children();
To install Jonk, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Jonk
CPAN shell
perl -MCPAN -e shell install Jonk
For more information on module installation, please visit the detailed CPAN module installation guide.