edo / daemons-bundle
A simple bundle to deamonize your Symfony's commands
Installs: 4 926
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 0
Open Issues: 0
Type:symfony-bundle
Requires
- php: >=5.3.0
- ext-pcntl: *
- amphp/amp: ^1.0
- symfony/framework-bundle: ~2.1
Requires (Dev)
- phpunit/phpunit: 3.7.*
This package is not auto-updated.
Last update: 2021-09-18 01:54:10 UTC
README
A worker example
<?php namespace AppBundle\Command; use Edo\DaemonsBundle\Command\ContainerAwareDaemonCommand; use Symfony\Component\Console\Input\Input; use Symfony\Component\Console\Input\InputArgument; use Symfony\Component\Console\Input\InputInterface; use Symfony\Component\Console\Input\InputOption; use Symfony\Component\Console\Output\OutputInterface; class KafkaConsumerCommand extends ContainerAwareDaemonCommand { protected function configure() { $this ->setName('kafka:consumer') ->setDescription('') ; } /** * * This function is called before the loop * * @param InputInterface $inputInterface * @param OutputInterface $outputInterface */ protected function initialize(InputInterface $inputInterface, OutputInterface $outputInterface) { } /** * * This function is the loop, it means you can use this function as while(1) * * @param InputInterface $input * @param OutputInterface $output */ private $string = ''; protected function execute(InputInterface $input, OutputInterface $output) { $this->string .= substr(str_shuffle("0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"), 0, 204800); } /** * * This function is called inside register_shutdown_function() * * @param InputInterface $input * @param OutputInterface $output */ protected function terminate(InputInterface $input, OutputInterface $output) { } }