Kein Firecrawl oder Tavily mehr? Wie Sie Ihre eigene Search/Scrape API 2,3x schneller und mit nur 6 MB RAM betreiben (Rust, Self-Hosted)
von Denis Shokhirev, Enterprise AI Architect aus Freiburg im Breisgau. Mein Stack: Claude, Supabase, n8n, Doppler und selbstgehostetes Postgres – und ich liefere produktive Multi-Agenten-Systeme für DACH-B2B Kunden aus. Der aktuelle Engpass im Produktivbetrieb: Externe Search/Scrape APIs (Firecrawl, Tavily, SerpAPI) verursachen Verzögerungen und Timeouts mitten in der Nacht; 15% der Agentenketten brechen ab, während die Kosten explodieren. Wo Search/Scrape APIs im Produktivbetrieb scheitern I
von Denis Shokhirev, Enterprise AI Architect aus Freiburg im Breisgau. Mein Stack: Claude, Supabase, n8n, Doppler und selbstgehostetes Postgres – und ich liefere produktive Multi-Agenten-Systeme für DACH-B2B Kunden aus. Der aktuelle Engpass im Produktivbetrieb: Externe Search/Scrape APIs (Firecrawl, Tavily, SerpAPI) verursachen Verzögerungen und Timeouts mitten in der Nacht; 15% der Agentenketten brechen ab, während die Kosten explodieren.
Wo Search/Scrape APIs im Produktivbetrieb scheitern
In drei Projekten zwischen 2023 und 2024 habe ich Firecrawl und Tavily als Ursache für unerklärliche Latenzspitzen und Ausfälle identifiziert. Beispiel: Ein Logistik-Kunde (Mai 2024, Supabase-Metriken) – 15% der Requests resultierten in Timeouts oder defekten Daten, was die gesamte RAG-Pipeline stoppte. Für regulierte Märkte (DSGVO, NDA) ist das ein No-Go.
Die Probleme im Überblick:
- Stabilität – Rate Limits, 5xx-Fehler, unvorhersehbare Verzögerungen.
- Sicherheit – Alle Daten verlassen die kontrollierte Infrastruktur. DSGVO-Risiko.
- Kosten – 10.000 Requests/Monat = 400+ € (Tavily Pro, Stand 2024).
- Compliance – Keine Auditierbarkeit der Rohdaten nach DSGVO/BSI-Anforderungen.
Eigene Search/Scrape API: Was funktioniert in der Praxis?
Ich habe eine eigene Search/Scrape API entwickelt und seit Mai 2024 im Produktivbetrieb:
- Rust (reqwest, scraper, tokio, serde) – effizienter, schneller Runtime.
- n8n – Orchestrierung und Workflow-Überwachung.
- Supabase/Postgres – Audit-Log, Caching, Datenhaltung.
- Doppler – Schlüssel- und Secrets-Management.
Reale Benchmark (1000 Requests, AWS EC2 t3.micro, Juni 2024):
| Metrik | Firecrawl | Tavily | Rust-API |
|---|---|---|---|
| Median-Latenz | 1,7 s | 1,4 s | 0,61 s |
| RAM pro Worker | 22 MB | 17 MB | 6 MB |
| Timeouts (%) | 3,1 | 2,9 | 0,6 |
| Monatliche Kosten (10k Req.) | 260 € | 400 € | 2 € (Server) |
Der entscheidende Vorteil: Keine Daten verlassen die eigene Infrastruktur. Vollständige Auditierbarkeit und Nachweispflicht – ein Muss für DSGVO, BSI Grundschutz und NIS2.
Architektur: Minimalismus, Geschwindigkeit, Auditierbarkeit
Rust: Effizienter Runtime, niedriger RAM-Bedarf
Warum Rust? Nur mit Rust gelingt es, 6 MB RAM pro Worker bei parallelen Anfragen stabil zu halten. Kerntools: reqwest (HTTP), scraper (HTML), tokio (Async).
use reqwest::Client;
use scraper::{Html, Selector};
use tokio;
#[tokio::main]
async fn main() {
let client = Client::new();
let url = "https://example.com";
let res = client.get(url).send().await.unwrap();
let body = res.text().await.unwrap();
let document = Html::parse_document(&body);
let selector = Selector::parse("title").unwrap();
for element in document.select(&selector) {
println!("{}", element.inner_html());
}
}
n8n + Supabase: Orchestrierung und Caching
n8n steuert die Workflows, sendet Alerts (z.B. bei 3x Fehlern in Folge an Mattermost). Supabase/Postgres übernimmt Caching und revisionssichere Speicherung für Audits.
Doppler: Sichere Schlüsselverwaltung
Sämtliche Secrets werden mit Doppler verwaltet und regelmäßig rotiert. Trotz Nutzung von gitleaks (vgl. gitleaks docs, 2024) sind Fehlkonfigurationen ohne Secret-Vault im produktiven Umfeld ein reales Risiko.
Bereitstellung, Test & Audit
1. Deployment via Docker Compose
version: '3.8'
services:
search_scrape:
image: myrustapi:latest
mem_limit: 12m
environment:
- DOPPLER_TOKEN=...
ports:
- "8080:8080"
restart: always
postgres:
image: postgres:15
environment:
POSTGRES_PASSWORD: secret
volumes:
- db-data:/var/lib/postgresql/data
volumes:
db-data:
2. Code- und Sicherheitsprüfung
Vor dem Go-Live: Statische Analyse (semgrep, bandit für Python-Proxys, gitleaks für Secrets). Die gesamte Parsing-Logik wird gegen OWASP Top 10 (2023) geprüft – keine eval, kein externer Code, keine unsichere HTML-Verarbeitung.
3. Monitoring & Alerting
n8n integriert Mattermost, Telegram, E-Mail für Live-Alerts nach SLA (z.B. 95% der Requests <1s, sonst Alarm an Owner).
FAQ
Warum nicht Go oder Python?
Go benötigt mehr RAM pro Worker (8-12 MB), weniger Kontrolle über Async. Python ist für produktive Scraper zu schwergewichtig und benötigt ein Sandbox-Setup gegen RCE-Risiken. Rust ist für diese Pipeline die stabilste und ressourcensparendste Wahl.
Welche Seiten sind tabu?
Kein Scraping gegen explizites robots.txt-Disallow oder Lizenzrestriktionen. Für KI/RAG ist Auditierbarkeit der Quellen Pflicht – sonst drohen DSGVO- und NDA-Verstöße.
Wie umgehen Sie Blockaden?
User-Agent-Rotation, Backoff bei 429, gelegentlich Proxy. Aber: Bei <1 Request/Sekunde pro Domain sind Blockaden selten ein Problem.
Wie sieht der echte SLA aus?
Bei 10.000 Anfragen/Tag: 98,7% <1s, 0,6% Timeouts, 0% Datenlecks. Alles wird in Supabase geloggt, Audit unter NDA jederzeit möglich.
Wie wird die API angebunden?
Antwort als JSON (title, main_text, meta). n8n via HTTP Request Node, Integration mit Claude RAG. Supabase archiviert HTML/Archive und ermöglicht schnelle Recherchen und Audits.
Bei welcher Komponente Ihrer Search/Scrape-Pipeline treten im Produktivbetrieb die meisten Fehler auf – Timeouts, fehlerhafte Caches oder Datenlecks? Schreiben Sie mir – ein Vergleich der Ansätze interessiert mich. Ich biete einen kostenfreien 30-min Stack-Audit für DACH-Teams, die KI in regulierten Märkten bauen. Kontaktieren Sie mich auf LinkedIn oder unter @ger_dennis_ai.
Turn your process into an AI system
Fixed price. Production quality. DACH B2B focus.