Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/rohitdhas/plura
HTTP benchmarking tool built with Go
https://github.com/rohitdhas/plura
benchmarking go http-client
Last synced: 24 days ago
JSON representation
HTTP benchmarking tool built with Go
- Host: GitHub
- URL: https://github.com/rohitdhas/plura
- Owner: rohitdhas
- License: mit
- Created: 2024-04-23T15:56:10.000Z (7 months ago)
- Default Branch: main
- Last Pushed: 2024-05-05T05:49:29.000Z (6 months ago)
- Last Synced: 2024-06-19T11:30:38.358Z (5 months ago)
- Topics: benchmarking, go, http-client
- Language: Go
- Homepage:
- Size: 1.61 MB
- Stars: 3
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# 💡 Plura
Plura is a powerful HTTP benchmarking tool built with Go and Cobra, designed to benchmark API endpoints.
## 📦 Installation
Ensure you have Go installed on your machine. Then, you can install the HTTP Benchmarking Tool by running:
```bash
go install github.com/rohitdhas/plura@latest
```## 👨🏻💻 Usage
### Benchmarking with CLI Parameters
You can run benchmarks directly from the command line by providing the URL of the endpoint, the number of requests, and the concurrency level.
```bash
plura exec --url --requests --concurrency
```Example:
```bash
plura exec --url http://example.com/api --requests 1000 --concurrency 10
```## Benchmarking with YAML File (WIP)
Alternatively, you can specify the benchmark parameters in a YAML file and pass it to the tool.
```bash
plura exec --file
```The YAML file should have the following structure:
```bash
url: http://example.com/api
requests: 1000
concurrency: 10
```Example:
```bash
plura exec --file benchmark.yaml
```## Command-line Options
**`exec` Command**
- `--url or -u`: URL of the API endpoint to benchmark.
- `--requests or -r`: Number of requests to make.
- `--concurrency or -c`: Concurrency level (number of concurrent requests).
- `--file or -f`: Path to the YAML file containing benchmark parameters.## Contributing
Contributions are welcome! Please fork the repository, make your changes, and submit a pull request.
## License
This project is licensed under the MIT License - see the LICENSE file for details.