NexusLBNexusLBv0.0.3
Documentation/1. Getting Started
Module 1 of 8

1. Getting Started

Zero-dependency setup, binary compilation, and running your first proxy in under 60 seconds.

Installation & System Requirements

NexusLB runs on macOS (Apple Silicon & Intel) and Linux (x86_64, aarch64, ARMv7). It compiles into a completely self-contained single binary with zero external runtime dependencies.

  • Rust 1.80+ (stable toolchain recommended)
  • Linux kernel 5.1+ required for io_uring and AF_XDP engines; Tokio engine runs universally on all platforms including macOS
  • OpenSSL is NOT required (native pure-Rust rustls cryptographic engine)
For production deployments on Linux, compiling with 'RUSTFLAGS="-C target-cpu=native"' enables SIMD vectorized httparse instructions (AVX2/NEON), boosting header parsing throughput by 12–18%.
bash
# Clone and compile with Maximum Fat LTO optimization
git clone https://github.com/Aazann/NexusLB.git
cd NexusLB

# Build optimized release binary
cargo build --release -p nexuslb-cli

# Verify version and target architecture
./target/release/nexuslb version

60-Second Quickstart

Bootstrap a production-ready Layer 7 reverse proxy routing between local microservices.

bash
# 1. Start two mock backend HTTP servers on ports 8081 and 8082
python3 -m http.server 8081 &
python3 -m http.server 8082 &

# 2. Start NexusLB using the default configuration
./target/release/nexuslb start --config nexuslb.yaml

# 3. Test HTTP proxy forwarding with active metrics
curl -i http://localhost:8080/

# 4. In a separate terminal, launch the live operator dashboard
./target/release/nexuslb top

CLI Command Reference

The nexuslb binary exposes subcommands for running, inspecting, and hot-reloading active daemon processes.

CommandFlags / OptionsDescription
nexuslb start--config <PATH>, --engine <tokio|io-uring|xdp|auto>, --workers <N>Starts proxy server with specified engine
nexuslb top--admin-addr <ADDR> (default: 127.0.0.1:9091)Interactive 10 Hz curses operator terminal
nexuslb reload--admin-addr <ADDR>, --token <TOKEN>Triggers sub-microsecond atomic config swap
nexuslb status--admin-addr <ADDR>Queries running status and active upstream pools
nexuslb versionNoneOutputs binary build target, commit, and engines