Root ourselves. chdir(dirname(__DIR__)); date_default_timezone_set ( 'Africa/Johannesburg' ); #-> Prepare workspace. ini_set('memory_limit','512M'); require_once 'init_autoloader.php'; require_once 'SocketApp.php'; #-> Get the socket server running. #-> Server loop and our router. $server = React\EventLoop\Factory::create(); $router = new Daemon\Damien(); #-> ZeroMQ binding. $context = new React\ZMQ\Context($server); $pull = $context->getSocket(ZMQ::SOCKET_PULL); $pull->bind('tcp://127.0.0.1:90'); $pull->on('message', array($router, 'onQueueMessage')); #-> Websocket binding. $webSock = new \React\Socket\Server($server); $webSock->listen(91, '0.0.0.0'); $webServer = new Ratchet\Server\IoServer( new Ratchet\Http\HttpServer( new Ratchet\WebSocket\WsServer( $router ) ), $webSock ); #-> Awesomeness. $server->run();