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

v0.0.1 2015-08-18 15:56 UTC

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)
        {
    
        }
    }