Englisches Original: https://argusic.com/subject/fasthttp-reverse-proxy

fasthttp-reverse-proxy

Reverse-HTTP-/WebSocket-Proxy auf Basis von fasthttp

LäuftQuelle: GitHubGoMITCommit 3b0dcb225a9f

Go, Lizenz MIT. Das Projekt beschreibt sich selbst als: fasthttp, go, http proxy, lib, reverse proxy und websocket proxy.

fasthttp-reverse-proxy läuft. Ein Argusic-Agent hat es in 15 Minuten installiert und ist auf 4 Fehler gestoßen und hat jeden davon ohne Hilfe behoben. Das geschah auf einer sauberen Maschine ohne GPU, und die gesamte Sitzung wurde aufgezeichnet.

go 1.24.5 installed in-home, go build ./... go vet ./... and go test -count=1 ./... (11/11 tests, 3.007s) pass, HTTP reverse proxy (200) and weighted balancer (alternating backends) verified against a local backend, WS echo verified through the proxy, and the HTTPS backend answered bar: 200 over TLS.

Was der Agent auf einer sauberen Maschine erreicht hat, in seinen eigenen Worten. So wird gemessen

Von Argusic jedes Mal auf einer frischen Maschine gemessen. Jede Zahl verlinkt auf ihren Nachweis. Argusic Score 100 von 100 (der Mittelwert der Lauf-Scores dieses Projekts).

Auf einen Blick

Befund
Läuft
Argusic Score
100 / 100
Kosten des verifizierenden Laufs
0,14 USD (gemessen)
aufgezeichnete Läufe
1
zuletzt getestet
Sterne
238
Forks
58
offene Issues
1
Beobachter
7
Größe
1 MB
erstellt
letzter Push

Projektdaten von GitHub, oben auf dieser Seite verlinkt, aktualisiert . Testdaten von Argusic (CC BY 4.0); jede Zahl verlinkt auf eine Laufseite mit dem vollständigen Log, der Aufzeichnung und deren sha256-Hashes.

Was gemessen wurde

Aus dem Lauf, der diesen Befund entschieden hat. Jede Zeile ist ein aufgezeichneter Wert, keine Schätzung.

Durch jeden Fehlschlag verlorene Zeit beim Testen von fasthttp-reverse-proxy, aus dem aufgezeichneten Lauf gezeichnet
Jeder Balken ist ein Fehler, den der Agent aufgezeichnet hat, mit der Zeit, die er gekostet hat. Aus diesem Lauf gezeichnet, aus keiner anderen Quelle.

Was schiefging, in den Worten des Agents

Die eigenen Worte des Agents, das Schwerste zuerst, nie zu Ratschlägen umgeschrieben.

  • go build ./.../go test ./... failed: examples/https-reverse-proxy had two func main in one package (tlscert.go + proxy.go)6 Minuten
  • no Go toolchain in the container4 Minuten
  • the plain HTTP example hardcoded localhost:8080, which in this container resolved to the stale TLS backend, so the demo proxy returned 5004 Minuten
  • go vet flagged benchmark/ws_proxy_benchmark.go:44: misuse of unbuffered os.Signal channel1 Minute
Installationszeit
15 Minuten
Von der kalten Maschine bis zum Ende
16 Minuten
Aufgetretene und behobene Fehler
4 aufgetreten, 4 ohne menschliche Hilfe behoben
Wie das Ergebnis belegt wurde
curl -sS -o /tmp/pb -w '%{http_code}' http://127.0.0.1:8081/local/hello?x=1 returned 200; go test -count=1 ./... exited 0, root package ok 3.007s, 11 test funcs pass; go build ./... and go vet ./... exited 0
Verbrauchte Modell-Tokens
560.272
Genau getesteter Commit
3b0dcb225a9f
Container-Image
sha256:cdd920bce783

Was nicht gemessen wurde

Die andere Hälfte, damit Sie genau sehen, wie weit dieser Nachweis reicht. Eine Lücke wird als Lücke angezeigt und nie aufgefüllt.

Maximaler GPU-Speicher
dieser Lauf fand auf einer CPU-Maschine statt, es gab also keine GPU zu messen
Verhalten über einen langen Lauf
jeder Versuch verwendet die kleinsten dokumentierten Einstellungen und ein festes Zeitbudget, daher misst dies, ob es läuft, nicht wie es sich unter Last hält

Das Ende der Aufzeichnung

Die letzten Zeilen der Terminalsitzung, die diesen Befund entschieden hat, genau so, wie sie aufgezeichnet wurden.

- Error 2 (`go vet`): `benchmark/ws_proxy_benchmark.go:44` unbuffered signal channel passed to `sig…
- Error 3: no Go toolchain in container. Fixed (user install in `$HOME`): downloaded `go1.24.5.linu…
- Error 4: example plain HTTP proxy hardcoded `localhost:8080`, which in this image resolves only t…
- Verification findings (not changed): non-`/local` prefixes are passed through verbatim to the bac…
- Test counts: `go test -count=1 ./...` → root package `ok ... 3.007s`; 11 test funcs pass (`Test_g…
**End-to-end verification (tier1_real)**
- Plain HTTP: built `/tmp/proxy_plain2` from the example; ran a local backend + proxy; `curl http:/…
- Balancer: 10 requests via `1284` all `200`; debug log shows strict alternation `addr = 127.0.0.1:…
- HTTPS backend: `curl -k https://127.0.0.1:8080/foo` → `bar: 200, 127.0.0.1:...` (backend binary r…
- WS: ws server + ws proxy + ws client → 5 echoed timestamps (`recv:` messages through the proxy), …
**Final state**
- Installed Go 1.24.5 (home dir), dependencies resolved, whole repo builds, `go vet ./...` clean, f…

Gesamte Sitzung abspielen, jeder Befehl von einer sauberen Maschine bis zu diesem Punkt.

So wurde getestet

Ein Agent, ein Container, keine menschliche Hilfe. Er installiert das Projekt so, wie es die eigene Dokumentation beschreibt, führt es aus und behebt, was nicht funktioniert. Alles Folgende wurde so aufgezeichnet, wie es geschah: die Terminalsitzung, das Log und der genaue Commit. Die vollständige Methodik.

Stärken und Grenzen

Gemessene Fakten, keine Meinungen. Wie diese Inhalte entstehen.

Was gut lief

  • Hat auf einer sauberen Maschine einen lauffähigen Zustand erreicht, mit aufgezeichneter Sitzung.
  • In 15 Minuten installiert.
  • Hat sich von allen 4 Fehlern erholt, ohne dass ein Mensch eingriff, was zeigt, dass die Fehlschläge gut genug dokumentiert sind, um sie zu lösen.
  • Lief ohne GPU, braucht also keine, um zu starten.
  • Lizenz MIT, laut Angabe des Hosts.

Was nicht lief oder unbekannt ist

  • Bisher einmal gemessen. Ein einzelner Versuch zeigt, dass es laufen kann, nicht dass es zuverlässig läuft.

Wofür es eine vernünftige Wahl ist

  • Zum Ausprobieren auf einem Laptop oder kleinen Server: Es erreichte einen lauffähigen Zustand ohne GPU.

Ebenfalls getestet, im selben Bereich

Jedes dieser Projekte wurde von Argusic auf einer sauberen Maschine installiert und ausgeführt. Hier erscheint nichts, was nicht getestet wurde.

Laufverlauf

getestet vonVersuchErgebnisScoreKosten USDwann
Argusic Runner1/3Läuft100,000,14

Themen (von GitHub)

fasthttpgohttp-proxylibreverse-proxywebsocket-proxy

Badge einbetten

Markdown für die README des Projekts. Es verlinkt hierher zurück; Bedingungen auf der Seite mit den Nutzungsbedingungen.

[![Tested by Argusic](https://argusic.com/badge/fasthttp-reverse-proxy.svg)](https://argusic.com/subject/fasthttp-reverse-proxy)

Fragen

Läuft fasthttp-reverse-proxy?
Ja. fasthttp-reverse-proxy läuft. Argusic hat es auf einer sauberen Maschine in 15 Minuten installiert und gestartet, ist dabei auf 4 Fehler gestoßen und hat die Sitzung aufgezeichnet.
Wie hat Argusic fasthttp-reverse-proxy getestet?
Auf einer frischen Einwegmaschine, mit jedem Befehl aufgezeichnet und dem Repository fixiert auf Commit 3b0dcb225a9f. Ein Versuch ist aufgezeichnet, und die vollständige Methode steht auf der Seite zur Methodik.
Was hat der Test von fasthttp-reverse-proxy gekostet?
Der Lauf, der diesen Befund ergab, kostete 0,14 USD: echte Rechen- und Modellkosten, kein Listenpreis pro Million Tokens. Der Betrag ist auf der Seite dieses Laufs aufgezeichnet.
Wie lange dauert die Installation von fasthttp-reverse-proxy?
15 Minuten in dem Lauf, der diesen Befund entschieden hat, von einer sauberen Maschine bis zum lauffähigen Zustand. Das ist ein gemessener Versuch, kein Durchschnitt.
Braucht fasthttp-reverse-proxy eine GPU?
Nicht zum Starten. Argusic hat auf einer Maschine ohne GPU einen lauffähigen Zustand erreicht.
Was geht bei der Installation von fasthttp-reverse-proxy schief?
Im aufgezeichneten Lauf gingen 4 Dinge kaputt, und 4 davon wurden ohne menschliche Hilfe behoben. Jedes davon und die Zeit, die es gekostet hat, ist auf dieser Seite aufgeführt.
Wo ist der Nachweis für fasthttp-reverse-proxy?
Der aufgezeichnete Lauf ist auf dieser Seite, jeweils mit Link auf das vollständige Log und die Terminalaufzeichnung, gespeichert mit einem sha256-Fingerabdruck, damit nichts unbemerkt verändert werden kann.

Discussion