Skip to content

DM-lab5/distributed-computation-center

Repository files navigation

Distributed Computation Center

Software package intended for research teams, for distributed computations. Software at current version supports computations that has sequential nature. Software supports unlimited number of participants, that can request at anytime. All requests will be placed into queue, and executed in the order they arrived. From here can be inferred the kind of models that can be computed by this software package. That is, only models which has state at every given moment, and can be updated at any given step, regardless of requests waiting in queue. Nevertheless, this is the default behaviour expected from software, and there is freedom to design the application in a way, so it can be used for parallel and non sequential models. Sequential modeling is available off-the-shelf. At current version request supported only by HTTP protocol.

System provides logging available in server, where the software is running. All logs are collected through the most known logging stack that is ELK, hence, all logs are visualized by Kibana. Logging is configurable and can be disabled. As ELK stack runs as separate micro-service, it can be used for storing any user generated data and visualized in Kibana. Software provides embedded module for writing data into this stack.

To have easy experience with environment we've wrapped the software into Docker containers, which is known enterprise container platform. This gives freedom to operate with any operating system without infrastructure lock-ins. All is needed for application to work is the Docker Community Edition.

Requirements: Docker Community Edition

Install Docker version 17.05+

Install Docker Compose version 1.6.0+

To start the app run: docker-compose up in the folder process-monitoring. After the process is finished run the following in the root folder: docker-compose up To start process in background run: docker-compose up -d.

For testing the computation center in stand-alone mode download Postman

Default Behavior

Computation center is up on

    localhost:3000

Kibana is up on

    localhost:5601

Elasticsearch is up on

    localhost:9200

Endpoints

Default methods when extending from provided main class

    HTTP:GET /toJson returns json of the model
    HTTP:GET /export returns model as encrypted string
    HTTP:POST /fromJson recovers model from given json
    HTTP:POST /import recovers model from given encrypted string

Docker Helper

List all docker containers

    docker ps -a

Stop all docker containers

    docker stop $(docker ps -aq)

Remove all docker containers

    docker rm $(docker ps -aq)

List all docker images

    docker images -a

Remove all docker images (images will be downloaded again on start)

    docker rmi $(docker images -q) [ --force ]

With exact Id

    docker rmi @id
    docker stop @id

About

Distributed Computation Center

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published