Add load_tester and ThreadPipeline.h to docs
This commit is contained in:
12
design.md
12
design.md
@@ -57,6 +57,9 @@ ninja test # or ctest
|
|||||||
**Debug tools:**
|
**Debug tools:**
|
||||||
- `./debug_arena` - Analyze arena allocator behavior
|
- `./debug_arena` - Analyze arena allocator behavior
|
||||||
|
|
||||||
|
**Load Testing:**
|
||||||
|
- `./load_tester` - A tool to generate load against the server for performance and stability analysis.
|
||||||
|
|
||||||
### Dependencies
|
### Dependencies
|
||||||
|
|
||||||
**System requirements:**
|
**System requirements:**
|
||||||
@@ -114,6 +117,15 @@ Ultra-fast memory allocator optimized for request/response patterns:
|
|||||||
- **Streaming data processing** with partial message handling
|
- **Streaming data processing** with partial message handling
|
||||||
- **Connection lifecycle hooks** for initialization and cleanup
|
- **Connection lifecycle hooks** for initialization and cleanup
|
||||||
|
|
||||||
|
#### **Thread Pipeline** (`src/ThreadPipeline.h`)
|
||||||
|
|
||||||
|
A high-performance, multi-stage, lock-free pipeline for inter-thread communication.
|
||||||
|
|
||||||
|
- **Lock-Free Design**: Uses a shared ring buffer with atomic counters for coordination, avoiding locks for maximum throughput.
|
||||||
|
- **Multi-Stage Processing**: Allows items (like connections or data packets) to flow through a series of processing stages (e.g., from I/O threads to worker threads).
|
||||||
|
- **Batching Support**: Enables efficient batch processing of items to reduce overhead.
|
||||||
|
- **RAII Guards**: Utilizes RAII (`StageGuard`, `ProducerGuard`) to ensure thread-safe publishing and consumption of items in the pipeline, even in the presence of exceptions.
|
||||||
|
|
||||||
#### **Parsing Layer**
|
#### **Parsing Layer**
|
||||||
|
|
||||||
**JSON Commit Request Parser** (`src/json_commit_request_parser.{hpp,cpp}`):
|
**JSON Commit Request Parser** (`src/json_commit_request_parser.{hpp,cpp}`):
|
||||||
|
|||||||
Reference in New Issue
Block a user