https://github.com/stamen/kevlar
Synthetic load generation
https://github.com/stamen/kevlar
Last synced: about 2 months ago
JSON representation
Synthetic load generation
- Host: GitHub
- URL: https://github.com/stamen/kevlar
- Owner: stamen
- Created: 2014-07-10T02:40:11.000Z (almost 11 years ago)
- Default Branch: master
- Last Pushed: 2016-07-10T16:40:10.000Z (almost 9 years ago)
- Last Synced: 2025-03-10T20:47:05.481Z (about 2 months ago)
- Language: JavaScript
- Size: 10.7 KB
- Stars: 2
- Watchers: 20
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
Awesome Lists containing this project
README
# kevlar
Synthetic load generation.
## Installation
```bash
npm install kevlar
```## Running
`kevlar` reads a list of _paths_ from `STDIN` and resolves them against
a target URL (`--target`) before making `HEAD` requests.This means that you can use a static list of paths as a source of load:
```bash
cat paths.txt | kevlar -t http://example.com
```Or, you can use a dynamic list of paths, in this case processed from a remote
syslog stream:```bash
curl -s http://source.example.com | \
grep path | \
perl -pe 's/^.+GET (\/[^\/]+\/[\w\/\.]+).+$/\1/' \
kevlar -t http://example.com
```If you see `EMFILE` errors, `kevlar`'s intended concurrency is being limited by
the number of available file descriptors (often 256 by default). To increase
the limit, use:```bash
ulimit -n 1024
```## Notes
`kevlar` currently makes `HEAD` requests by default (use -X option to change the method) in order to reduce bandwidth
utilization (with the knowledge that in this case the target will perform all
necessary work in response).