# cloud-bench

> CLI to benchmark the CPU, network and disk performance of cloud servers over time.

Latest version **1.1.0** (published 2022-03-14) · MIT license · 0 weekly downloads

## Install

```sh
npm install cloud-bench
pnpm add cloud-bench
yarn add cloud-bench
bun add cloud-bench
```

## Health

**Score 15/100 (F)** — status: abandoned.

Positive: no vulnerabilities.

Warnings: low downloads; no types; no esm support.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 1.1.0 |
| Published | 2022-03-14 |
| First published | 2018-04-03 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 3 |
| Unpacked size | 10 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 32 |
| Author | James Simpson |
| Maintainers | goldfire |
| Keywords | cloud, performance, vps, ec2, aws, server benchmark, benchmark, cloud benchmark, bench |

## Links

- npm: https://www.npmjs.com/package/cloud-bench
- Repository: https://github.com/goldfire/node-cloud-bench
- Issues: https://github.com/goldfire/node-cloud-bench/issues
- npm.io page: https://npm.io/package/cloud-bench

## Dependencies (3)

- [colors](https://npm.io/package/colors.md) >=1.4.0
- [nomnom](https://npm.io/package/nomnom.md) >0.0.1
- [universal-speedtest](https://npm.io/package/universal-speedtest.md) 2.0.2

## Alternatives

- [@opentelemetry/exporter-zipkin](https://npm.io/package/@opentelemetry/exporter-zipkin.md) — 14.8M weekly downloads
- [pusher-js](https://npm.io/package/pusher-js.md) — 2.0M weekly downloads
- [browserify](https://npm.io/package/browserify.md) — 1.7M weekly downloads
- [sqs-consumer](https://npm.io/package/sqs-consumer.md) — 1.7M weekly downloads
- [@sanity/eventsource](https://npm.io/package/@sanity/eventsource.md) — 930.8K weekly downloads

## Recent versions

- 1.1.0 (latest) — 2022-03-14
- 1.0.8 — 2022-03-14
- 1.0.7 — 2022-03-14
- 1.0.6 — 2022-03-13
- 1.0.5 — 2018-04-05
- 1.0.4 — 2018-04-05
- 1.0.3 — 2018-04-03
- 1.0.2 — 2018-04-03
- 1.0.1 — 2018-04-03
- 1.0.0 — 2018-04-03

## README

## Description
node-cloud-bench is a small CLI utility written with Node.js that allows for easy benchmarking of cloud servers, specifically to test CPU performance, network speeds and disk IOPS. When it comes to cloud computing, seeing how consistent the values are over time is just as important as the values themselves, which is why you can specify an interval, length of the test and a location to output a CSV file with the results.

The results collected include:

* Network CDN Download (Mbps)
* Network Ping (seconds)
* Network Download (Mbps)
* Network Upload (Mbps)
* CPU Time (seconds)
* Read IOPS
* Write IOPS
* I/O Ping

## Installation

```
npm install cloud-bench
```

This script makes use of the following dependencies that you may need to install:

* [fio](https://github.com/axboe/fio)
* [ioping](https://github.com/koct9i/ioping)

## Usage

```bash
node cloud-bench \
    --interval [seconds between tests] \
    --limit [number of iterations] \
    --nodisk
    --out [output filename]
```

The below command will run performance tests every 30 minutes for 24 hours.

```bash
node cloud-bench \
    --interval 1800 \
    --limit 48 \
    --out results.csv
```

Sample output:

| Time | Download (CDN) | Ping | Download | Upload | CPU Time | Read IOPS | Write IOPS | IO Ping |
| ----- | ---------------- | ----- | ---------- | ------- | ---------- | ----------- | ---------- | --------|
| Mon Apr 02 2018 21:35:05 GMT-0500 (CDT) | 32 | 28 | 49 | 11 | 23.387 | 37936 | 18428 |15.4us |

If you are running these tests on a remote machine, it is recommended to pair it with something like [forever](https://github.com/nodejitsu/forever) to turn the test into a daemon.

## License

Copyright (c) 2018 [James Simpson](https://twitter.com/GoldFireStudios) and [GoldFire Studios, Inc.](https://goldfirestudios.com)

Released under the MIT License.

---
_Source: https://npm.io/package/cloud-bench · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
