Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/timonback/thesis-msc-simulator
Master project. Simulator to find the optimal deployment model of FaaS (serverless) and VM-based instances to reduce cost
https://github.com/timonback/thesis-msc-simulator
cloud faas nodejs pareto-optimality serverless vm
Last synced: 3 months ago
JSON representation
Master project. Simulator to find the optimal deployment model of FaaS (serverless) and VM-based instances to reduce cost
- Host: GitHub
- URL: https://github.com/timonback/thesis-msc-simulator
- Owner: timonback
- Created: 2018-08-30T13:42:25.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2022-12-08T06:08:33.000Z (about 2 years ago)
- Last Synced: 2024-10-10T05:38:06.152Z (3 months ago)
- Topics: cloud, faas, nodejs, pareto-optimality, serverless, vm
- Language: JavaScript
- Homepage: https://fse.studenttheses.ub.rug.nl/18484/
- Size: 345 KB
- Stars: 6
- Watchers: 2
- Forks: 5
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Cloud Load Simulator
[![CircleCI](https://circleci.com/gh/timonback/thesis-msc-simulator.svg?style=svg&circle-token=9c777812c1ea59fd70f1eb8092675cfa4657c088)](https://circleci.com/gh/timonback/thesis-msc-simulator)Demo at: [https://faas-simulator.herokuapp.com/index.html](https://faas-simulator.herokuapp.com/index.html)
It simulates various loads towards a cloud environment.
Based on the configuration, the cost for handling all requests is calculated.
In many cases (depending on the load characteristics), the cost can be reduced by moving certain requests to FaaS
(Function as a Service).This is a Python 3 project that requires the dependencies to be install via `python3 setup.py install`
(virtualenv is recommended in general).All of the configuration is done in the `simulator/configuration.py` file.
## Standalone
Run `python3 main.py`
## Server
Run `python3 serve.py`
Then open `http://localhost:8888/index.html`
![Screenshot](../master/README_screenshot.png?raw=true)
## Tests
Run the tests `python3 setup.py test`. A coverage report is generated in `./htmlcov`.
## Profiling
Run the tests `python3 setup.py test` to profile.
Convert the profiling file (`profiler.dmp`) into a readable file with `python3 util/analyze_dmp.py profiler.dmp
profiler.log`.