joyent-portal/legacy/spikes/no-leak
Sérgio Ramos 8295bd6882 chore: initial lerna setup
this shall be a progressive process
2017-05-25 10:56:50 +01:00
..
artillery chore: initial lerna setup 2017-05-25 10:56:50 +01:00
prometheus chore: initial lerna setup 2017-05-25 10:56:50 +01:00
scripts chore: initial lerna setup 2017-05-25 10:56:50 +01:00
src chore: initial lerna setup 2017-05-25 10:56:50 +01:00
static chore: initial lerna setup 2017-05-25 10:56:50 +01:00
.babelrc chore: initial lerna setup 2017-05-25 10:56:50 +01:00
.dockerignore chore: initial lerna setup 2017-05-25 10:56:50 +01:00
.eslintignore chore: initial lerna setup 2017-05-25 10:56:50 +01:00
.eslintrc chore: initial lerna setup 2017-05-25 10:56:50 +01:00
.gitignore chore: initial lerna setup 2017-05-25 10:56:50 +01:00
Dockerfile chore: initial lerna setup 2017-05-25 10:56:50 +01:00
datasets.json chore: initial lerna setup 2017-05-25 10:56:50 +01:00
docker-compose.yml chore: initial lerna setup 2017-05-25 10:56:50 +01:00
package.json chore: initial lerna setup 2017-05-25 10:56:50 +01:00
readme.md chore: initial lerna setup 2017-05-25 10:56:50 +01:00
sort.js chore: initial lerna setup 2017-05-25 10:56:50 +01:00
watch.js chore: initial lerna setup 2017-05-25 10:56:50 +01:00
yarn.lock chore: initial lerna setup 2017-05-25 10:56:50 +01:00

readme.md

leak

    1. Spawn a bunch of servers:
    • another-fast: a node with a linear memory leak
    • fast: a node with a linear memory leak
    • slow: a node with a memory leak that grows very slowly
    • plain: a node with no memory leak
    1. Spawn an artillery for each node that loads it with a small but constant stream of requests
    1. Spawn Prometheus that watches the cpu/memory of each node

Then, locally we start the same server and we can see the different instances and an aggregate of the metrics for each job.

usage

λ docker-compose up
λ node .

Go to http://127.0.0.1:8000/ and see the result. The Prometheus is also listening at http://127.0.0.1:9090/

example