2017 © Pedro Peláez
 

library daemon

Simple PHP daemon wrapper for your custom handler, integrates easily with initd or supervisor

image

firegate666/daemon

Simple PHP daemon wrapper for your custom handler, integrates easily with initd or supervisor

  • Friday, October 9, 2015
  • by firegate666
  • Repository
  • 3 Watchers
  • 2 Stars
  • 10 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 0 Forks
  • 0 Open issues
  • 4 Versions
  • 0 % Grown

The README.md

Simple daemon

What is this project about

You have background tasks for your project? You want to code them in PHP? You need a simple framework to attach your tasks to?, (*1)

Please try out my wrapper for your daemon tasks., (*2)

How to use it

That is quite simple, have a look at the example daemon to get an idea what you need to implement., (*3)

Integrate it via composer into project, (*4)

composer require firegate666/daemon

Create your own daemon handler and daemon handler factory be implementing HandlerInterface and HandlerInterfaceFactory. Setup your own startup php script, see exampled.php, (*5)

setup with start-stop-daemon

Copy your own init script to /etc/init.d/, see etc/init.d/exampled.daemon.sh., (*6)

setup with supervisor

Download and install Supervisord. On Ubuntu or similar it is quite easy to use apt-get install. Copy your supervisor configuration to /etc/supervisor/conf.d/, see etc/supervisor/conf.d/exampled.conf. Copy your own init script to /etc/init.d/, see etc/init.d/exampled.supervisor.sh., (*7)

control it

Now you can control your daemon, (*8)

/etc/init.d/exampled start
/etc/init.d/exampled stop
/etc/init.d/exampled restart
/etc/init.d/exampled status    

How does this thing work

Via a command line sript you can start up the daemon, see exampled.php. Write your own handler and factory and inject them into the daemon. When the daemon starts up, he forks 4 child processes with your pre-defined handler. If one child goes down, a new one is started. Each child process has its own handler instance and starts the run loop., (*9)

If the daemon itself receives a shutdown signal (SIGTERM, SIGINT), this signal is dispatched to his children and the daemon waits for their termination before he goes down himself., (*10)

ToDos

  • too many children died in short amount of time detection
  • proper log messages and levels
  • define guidelines for levels

The Versions

09/10 2015

dev-master

9999999-dev https://github.com/firegate666/SimpleDaemon

Simple PHP daemon wrapper for your custom handler, integrates easily with initd or supervisor

  Sources   Download

Apache-2.0

The Requires

 

by Marco Behnke

09/10 2015

0.1.2

0.1.2.0 https://github.com/firegate666/SimpleDaemon

Simple PHP daemon wrapper for your custom handler, integrates easily with initd or supervisor

  Sources   Download

Apache-2.0

The Requires

 

by Marco Behnke

09/10 2015

0.1.1

0.1.1.0 https://github.com/firegate666/SimpleDaemon

Simple PHP daemon wrapper for your custom handler, integrates easily with initd or supervisor

  Sources   Download

Apache-2.0

The Requires

 

by Marco Behnke

09/10 2015

0.1.0

0.1.0.0 https://github.com/firegate666/SimpleDaemon

Simple PHP daemon wrapper for your custom handler

  Sources   Download

Apache-2.0

The Requires

 

by Marco Behnke