Gloubster Server
, (*1)
Requirements
// todo, (*2)
Installation
First, clone the project :, (*3)
git clone https://github.com/Gloubster/Server.git gloubster-server
Gloubster Server relies on many components (Bower, composer, curl, etc...), to
init this, use the easy command :, (*4)
cd gloubster-server
./init.sh
Concepts
Gloubster server listens for incoming job messages.
These jobs are queued in a RabbitMQ server.
Once processed by a worker, the message is sent back to a log queue.
Log queue is processed to store processed data information in a Redis server for reporting purpose.
A web application is available, providing realtime monitoring through websockets., (*5)
Configuration
You will find a configuration sample in config/config.sample.json., (*6)
server
// todo, (*7)
redis-server
// todo, (*8)
session-server
// todo, (*9)
websocket-server
// todo, (*10)
listeners
// todo, (*11)
Defining my own listener
// todo, (*12)
Hacking GloubsterServer
GloubsterServer is a Dependency Container itself and embeds Evenement as
event-dispatcher., (*13)
You can easily hack it :, (*14)
use Gloubster\Server\GloubsterServer;
$gloubster = new GloubsterServer::create($loop, $conf, $logger);
$gloubster['dispatcher']->on('start', function () {
echo "Gloubster server has start\n";
});
Be free, but remember you must be non-blocking, bro !, (*15)
Available events are :, (*16)
- start : triggered when the run method is called.
- booted : triggered once all service (stomp, redis, websockets) are connected and fine.
- stop : triggered when the stop method is called.
- error : triggered whenever an error occured.
- stomp-connected : triggered once stomp client is connected.
- redis-connected : triggered once redis client is connected.
Todo
- Add priority
- Real web application
License
Released under the MIT license., (*17)