# nakabonne/ali

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/nakabonne-ali).**

_How this analysis was created: the description and tags below were written by an AI model that read this project's README and public documentation pages; stars, license and language come straight from the GitHub API. The model does not read the source code._

3,936 stars · 153 forks · Go · MIT

## Links

- GitHub: https://github.com/nakabonne/ali
- awesome-repositories: https://awesome-repositories.com/repository/nakabonne-ali.md

## Topics

`benchmarking` `go` `load-testing` `monitoring` `testing-tools` `tui` `visualization`

## Description

Ali is an HTTP load testing tool and traffic generator used to measure system performance and stability by sending high volumes of requests to a target URL. It functions as a performance metrics exporter and real-time visualizer, simulating client behavior through configurable request bodies, custom headers, and HTTP/2 support.

The project provides real-time performance monitoring via interactive charts that plot latency and request percentiles as data is collected. It identifies system bottlenecks through a combination of live performance plotting and the exportation of raw data points and aggregated summaries to files for post-test analysis.

The tool covers broad capabilities in traffic management, including the control of network behaviors such as keep-alive connections and request timeout settings. It further supports API stress testing through parameter-driven configurations of HTTP methods and payloads.

## Tags

### Testing & Quality Assurance

- [HTTP Load Testing](https://awesome-repositories.com/f/testing-quality-assurance/http-load-testing.md) — Generates high volumes of web traffic to a target URL to evaluate system stability and performance.
- [HTTP Traffic Simulation](https://awesome-repositories.com/f/testing-quality-assurance/http-traffic-simulation.md) — Simulates client behavior using configurable request bodies, custom headers, and HTTP/2 support.
- [Request Parameter Configurations](https://awesome-repositories.com/f/testing-quality-assurance/request-parameter-configurations.md) — Defines HTTP methods, custom headers, and request bodies to simulate specific client behaviors. ([source](https://github.com/nakabonne/ali/blob/master/main_test.go))
- [HTTP Stress Testing Tools](https://awesome-repositories.com/f/testing-quality-assurance/software-testing/testing-frameworks/test-frameworks/execution-and-infrastructure/automated-test-generators/stress-testing/http-stress-testing-tools.md) — Identifies breaking points in web services by sending custom HTTP requests with specific headers and bodies.
- [Performance Analysis](https://awesome-repositories.com/f/testing-quality-assurance/performance-testing-analysis/performance-analysis.md) — Combines real-time plotting and raw data export to identify system slowdowns under heavy traffic.

### Data & Databases

- [Real-time Visualizations](https://awesome-repositories.com/f/data-databases/real-time-data-streaming/real-time-visualizations.md) — Offers interactive charts that plot latency and percentiles as HTTP load test data is collected.
- [Analysis Result Exporters](https://awesome-repositories.com/f/data-databases/data-serialization-formats/structured-data-exporters/analysis-result-exporters.md) — Saves raw performance data and aggregated summaries to files for offline processing. ([source](https://github.com/nakabonne/ali/blob/master/docs/export.md))
- [General Chart Renderers](https://awesome-repositories.com/f/data-databases/data-visualization-charts/json-data-chart-renderers/general-chart-renderers.md) — Provides real-time latency and percentile graphs that update dynamically as data arrives.
- [Performance Metric Aggregators](https://awesome-repositories.com/f/data-databases/real-time-data-aggregators/performance-metric-aggregators.md) — Implements background calculation of performance percentiles and request counts during active load tests.
- [Test Result Persistence](https://awesome-repositories.com/f/data-databases/result-persistence-layers/test-result-persistence.md) — Serializes raw performance data and summary statistics to files for post-test auditing and analysis.

### Networking & Communication

- [HTTP Request Configurations](https://awesome-repositories.com/f/networking-communication/http-request-configurations.md) — Allows definition of HTTP methods, headers, and payloads via configuration objects before initiating load.
- [Connection Parameter Controls](https://awesome-repositories.com/f/networking-communication/http-request-customization/request-execution-behavior/connection-parameter-controls.md) — Manages HTTP/2 support, keep-alive connections, and request timeout settings for precise control. ([source](https://github.com/nakabonne/ali/blob/master/main_test.go))
- [Protocol Behavior Simulation](https://awesome-repositories.com/f/networking-communication/network-infrastructure-routing/network-infrastructure-configuration/network-configuration/http-connection-behavior/protocol-behavior-simulation.md) — Controls HTTP/2 and keep-alive settings to evaluate how different connection types affect server performance.

### System Administration & Monitoring

- [Real-time Performance Monitoring](https://awesome-repositories.com/f/system-administration-monitoring/real-time-performance-monitoring.md) — Visualizes live latency and request percentiles on interactive charts during active load tests.
- [Performance Metrics Exporters](https://awesome-repositories.com/f/system-administration-monitoring/performance-metrics-exporters.md) — Exposes raw data points and aggregated summaries from load tests for downstream analysis.

### Web Development

- [High-Volume Request Generators](https://awesome-repositories.com/f/web-development/http-request-managers/concurrent-request-pooling/high-volume-request-generators.md) — Spawns multiple simultaneous workers to send high-volume HTTP requests for performance testing.

### Part of an Awesome List

- [Load Testing Tools](https://awesome-repositories.com/f/awesome-lists/devtools/load-testing-tools.md) — Generate HTTP load and plot results in real-time.
