Skip to content

Simple C++ framework based on ZeroMQ to support the developing of redundant services

Notifications You must be signed in to change notification settings

paulrox/ReliableServiceFramework

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Reliable Service Framework

To compile simply call the 'make' command. The framework is compiled with a testing configuration. After the compilation, you can run the components by the following commands:

RSF_client -s i

runs the client and requests the i-th service, where i belongs to [0, 2].

RSF_start_broker

runs the broker component and its health checker. By default, the health checker expects 3 servers per service but it can be changed in the broker main.

RSF_deployment_unit -s i -n j

runs the deployment of the servers, where j servers are deployed for the service i. For this testing config j=3 must be used.

The test/ folder contains a set of testing scripts. Each of them must be run from the framework folder and simulates a particular situation.

The scripts are the following:

client_request_available.sh

A client requests a service which is available.

client_request_not_available.sh

A client requests a service which actually is not running.

client_request_one_server_down.sh

A client requests a service 5 times while one server has been killed.

client_request_two_server_down.sh

A client requests a service 5 times while two servers has been killed.

client_multiple_requests_available.sh

3 clients send a request 5 times for the same service.

multiple_requests_multiple_services.sh

2 clients send a request 5 times for two different services.

kill_broker.sh

Kills the broker process and waits its restart.

kill_server.sh

Kills a server process and waits its restart.

After every script execution each component prints some log information to a different log file. The logs are located in the folder log/ and are deleted before executing a new script.

About

Simple C++ framework based on ZeroMQ to support the developing of redundant services

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 93.9%
  • Makefile 4.1%
  • Shell 2.0%