Polyglot-benchmarks: het juiste gereedschap voor de juiste taak kiezen
Hoe meertalige benchmarks u helpen bij het kiezen van de juiste stapel voor elke toepassing – en niet één taal die ze allemaal regeert
Een korte, vlot leesbare metgezel. Voor de volledige diepgaande architectuur – harnasindeling, beslissingsmatrix, anti-patronen en hoe je de benchmarks kunt splitsen – leeshet lange artikel.
Uw organisatie heeft in 2019 één stapel gekozen. Uw werklasten niet.
De meeste teams standaardiseren nog steeds op één enkele taal voor elke nieuwe dienst: alles in Node, alles in Python, alles in Java, of een heroïsche weddenschap op Rust voor alleen greenfield. Deze gewoonte is begrijpelijk: het aanwerven, CI-sjablonen en beveiligingsbeoordelingen worden allemaal eenvoudiger als de stapel uniform is. Het probleem is dat de werklasten niet uniform zijn. Een API-gateway, een nachtelijke ETL-taak, een NGINX edge-transformatie, een JVM-microservice-domein en een chat-backend met langlevende verbindingen belasten verschillende delen van de runtime. Door één winnaar te kiezen uit een debat in de gang of uit een enkele micro-benchmark, kom je terecht bij het verkeerde gereedschap met de verkeerde lading.
Polyglot Benchmarksis het tegengif: een reproduceerbaar harnas en live dashboard datacht-runtimes op devergelijkt met dezelfdeHTTP-workloads, zodat architecten bewijsmateriaal kunnen matchen met begrensde contexten in plaats van standaard-stack bias.

Wat het meet
Het openbare dashboard vergelijktNGINX njs,OpenResty Lua,Python (FastAPI),Go (net/http),Rust (Actix),Bun,Java (Javalin / Jetty)enKotlin (Ktor / Netty)in zeven synthetische tests die echte API en randpatronen weerspiegelen: basislijn van platte tekst, JSON-serialisatie, CPU-gebonden fibonacci, stringmanipulatie, verzoekinspectie, intern subverzoek + transformatie en routeringslogica. Elke test rapporteert verzoeken per seconde, gemiddelde en staartlatentie (inclusief P99), tijd tot eerste byte vanaf krul en aantal fouten - live gestreamd terwijlbench.shis voltooid.
Java en Kotlin zitten naast de gecompileerde en scriptruntimes, zodat JVM-winkels kunnen zien hoe Javalin en Ktor op identieke routes handelen tegen Go, Rust, Bun en FastAPI - en niet tegen een handzaam 'enterprise vs greenfield'-verhaal. Het harnas leeft in-workflowvoorbeelden/benchmarks: Docker Compose-services, een gedeeldwrk-profiel (10 seconden, 4 threads, 100 verbindingen) en JSON-resultaten die door het dashboard worden verbruikt. Je kunt het gebruiken voor je eigen kandidaten en hotpaths.
Waarom dit een beslissingskader is, en geen klassement
Polyglot Benchmarks bekroont niet voor altijd één taal. Winnaars veranderen per testrij – precies wat u wilt bij het ontwerpen van microservices. De oordeelssectie van het dashboard wijst resultaten toe aan gebruiksscenario's (edge routing in Lua/njs, core concurrency in Rust/Go, JVM-services in Java/Kotlin, snelheid in Python). Dat is de stelling:polyglot by design, met gegevens voor architectuurbeoordelingsborden in plaats van meningen.

Zes voordelen voor platform- en engineeringleads
- Bewijs boven mening— voeg grafieken en configuratie toe aan ADR's; beslecht stapeldebatten met gemeten runs.
- Workload-specifieke winnaars— latentiegevoelige paden versus batch- versus edge-transformaties versus JVM-domeinen krijgen verschillende leiders.
- Totale eigendomskosten— onbewerkte RPS is niet genoeg; Weeg de bouwtijd, de afbeeldingsgrootte, de geschiktheid van de teamvaardigheden en de operationele last af.
- Reproduceerbare workflows— dezelfde repository, hetzelfde Compose-bestand, hetzelfde wrk-script; kan opnieuw worden uitgevoerd in CI.
- Legitieme meertalige microservices– verschillende talen per servicegrens zonder schaamte of verrassing.
- Risicoreductie— prototype op de tweede plaats vóór een mandaat voor de hele organisatie.

Snelle start
- Open hetlive dashboardterwijl een run bezig is (of start er lokaal een).
- Kloon
workflow-examples,cd benchmarks,docker compose up— acht taalservices plus dashboard en bankloper. - Lees
results.jsonop het dashboardvolume en wijs winnaars toe aan, uw-werklastrijen. - Schrijf de ADR - inclusief duur, threads, verbindingen en hardwareklasse.
Lees de lange versie
Het lange artikelbehandelt de volledige repo-indeling, een criteriatabel, het beslissingsmatrixdiagram, case-patronen per testfamilie (inclusief Java en Kotlin), anti-patronen, beperkingen en SEO-ready fragmenten om te delen met uw ARB. Gepubliceerd doorWorkstation; benchmarksite gehost oppolyglot-benchmarks.fictionally.org.
#Rust #GoLang #Bunjs #Java #Kotlin #Lua #Python #njs #FastAPI #Javalin #Ktor #OpenResty #polyglot #benchmarks