System Design Architectures

Interactive technical blueprints, capacity estimates, database sharding strategies, and visual flowcharts for the top 30 system design interview questions.

Target Architectures
AI Agent Architecture Blueprint

MicroVM Code Execution Sandbox Loop

Sub-150ms isolated execution hypervisor (Firecracker / gVisor) for safely running untrusted LLM-generated Python, Bash, and Node.js code with CPU, memory, and network constraints.

1. System Requirements

Functional
  • Execute dynamic Python, Bash, Node.js, and SQL scripts generated in real time by AI agents.
  • Capture stdout, stderr, execution duration, and generated binary artifacts (charts, CSV files, PDFs).
  • Enforce hard per-run isolation bounds: 1 vCPU, 512 MB RAM, 500 MB disk, and 30-second execution timeouts.
Non-Functional / SLA
  • True hardware-assisted kernel isolation via KVM/Firecracker to eliminate container breakout risks.
  • Zero outbound network access by default, with allowlisted proxy inspection for approved domains.
  • Cold boot latency under 150ms using pre-forked snapshot microVM pools.

2. Scale & Resource Estimates

Throughput: 1,200 code execution requests/minute across a 10-node warm microVM pool.

Storage & RAM: 50 MB base Alpine/Debian image; ephemeral overlay disks destroyed immediately after execution completes.

3. System API Endpoints

POST /v1/sandbox/execute
Content-Type: application/json

{
  "language": "python",
  "code": "import matplotlib.pyplot as plt
plt.figure(figsize=(6,3))
plt.plot([1,2,3,4], [10,25,18,35], color='#3b82f6')
plt.title('Agent Performance')
plt.savefig('output.png')",
  "timeout_sec": 15,
  "allow_network": false
}

Response (200 OK):
{
  "exit_code": 0,
  "stdout": "",
  "stderr": "",
  "duration_ms": 340,
  "peak_memory_mb": 42,
  "artifacts": [
    {
      "filename": "output.png",
      "size_bytes": 14200,
      "url": "https://storage.aiagent.org/artifacts/sess_901/output.png"
    }
  ]
}

4. Database Schema Design

CREATE TABLE sandbox_executions (
    exec_id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
    session_id VARCHAR(64) NOT NULL,
    agent_id VARCHAR(64) NOT NULL,
    language VARCHAR(32) NOT NULL,
    code_sha256 VARCHAR(64) NOT NULL,
    exit_code INTEGER NOT NULL,
    duration_ms INTEGER NOT NULL,
    peak_memory_mb INTEGER NOT NULL,
    had_network_attempt BOOLEAN DEFAULT FALSE,
    created_at TIMESTAMP WITH TIME ZONE DEFAULT NOW()
);

CREATE INDEX idx_sandbox_sess ON sandbox_executions(session_id);

5. Interactive High-Level Architecture

graph TD Agent["LLM Agent"] --> Gateway["Sandbox API Gateway"] Gateway --> Guard["Static Security Linter: AST and Shell"] Guard --> Pool["Warm Firecracker MicroVM Pool"] Pool --> VM["Disposable MicroVM"] VM --> Jailer["Linux Cgroups v2 and Jailer"] Jailer --> Runner["Isolated Code Runner"] Runner --> Out["Stdout, Stderr, Artifacts"] Out --> Gateway VM -. "Instant Memory Wipe" .-> Destroy["Destroy MicroVM"] Gateway --> Agent

6. Scalability Deep Dive & Bottlenecks

Standard Docker containers share the host Linux kernel, leaving production clusters vulnerable to kernel privilege escalation (e.g. dirty pipe, CVE container breakouts). Enterprise agent systems utilize Firecracker microVMs or Google gVisor. Firecracker boots lightweight Linux kernels inside KVM in 5ms from pre-warmed snapshot states. Untrusted model code executes within hardware-assisted virtualization boundaries and is completely destroyed upon process completion.

7. Production Scaling Strategies

Pre-Warmed VM Snapshots: Maintain a standby pool of 50 paused microVMs to eliminate OS initialization overhead and deliver sub-10ms response times.

Egress Proxy Sandboxing: Route sandbox internet requests through an audit proxy that prevents reverse shells, blocks private cloud metadata endpoints (169.254.169.254), and inspects payloads.

Client-Side WASM Fallback: For lightweight data transforms, offload execution to client-side Pyodide WebAssembly sandboxes, eliminating server execution cost entirely.

8. Runnable Production Starter Code

Scaffold