Mojolicious::Plugin::Minion - Minion job queue plugin
# Mojolicious (choose a backend) $self->plugin(Minion => {File => '/Users/sri/minion.data'}); $self->plugin(Minion => {Mango => 'mongodb://127.0.0.1:27017'}); # Mojolicious::Lite (choose a backend) plugin Minion => {File => '/Users/sri/minion.data'}; plugin Minion => {Mango => 'mongodb://127.0.0.1:27017'}; # Add tasks to your application app->minion->add_task(slow_log => sub { my ($job, $msg) = @_; sleep 5; $job->app->log->debug(qq{Received message "$msg".}); }); # Start jobs from anywhere in your application (data gets BSON serialized) $c->minion->enqueue(slow_log => ['test 123']); # Perform jobs in your tests $t->get_ok('/start_slow_log_job')->status_is(200); $t->get_ok('/start_another_job')->status_is(200); $t->app->minion->perform_jobs;
Mojolicious::Plugin::Minion is a Mojolicious plugin for the Minion job queue.
Mojolicious::Plugin::Minion implements the following helpers.
my $minion = $app->minion; my $minion = $c->minion;
Get Minion object for application.
# Add job to the queue $c->minion->enqueue(foo => ['bar', 'baz']); # Perform jobs for testing $app->minion->perform_jobs;
Mojolicious::Plugin::Minion inherits all methods from Mojolicious::Plugin and implements the following new ones.
$plugin->register(Mojolicious->new, {Mango => 'mongodb://127.0.0.1:27017'});
Register plugin in Mojolicious application.
Minion, Mojolicious::Guides, http://mojolicio.us.
To install Minion, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Minion
CPAN shell
perl -MCPAN -e shell install Minion
For more information on module installation, please visit the detailed CPAN module installation guide.