Slot: server
The backend: requests, logic, APIs.
A product is a set of slots to fill: browser, server, database, deploy. A language fills some of them well, some badly, some not at all. A stack is one pick per slot.
browserserverdatabasesystemsmobilecliscriptsdatacomputeembeddedwasmconfiggames
Who fits
| Language | Fit | Users held, 8 vCPU | |
|---|---|---|---|
| Rust | ●●● strong | 130,000 | |
| C# | ●●● strong | Stack Overflow's 2016 web tier ran on ASP.NET MVC. | |
| Elixir | ●●● strong | Discord's core services are written in Elixir. | |
| Go | ●●● strong | ||
| Haskell | ●●● strong | Facebook's Sigma rule engine runs in Haskell at more than one million requests per second. | |
| Java | ●●● strong | Netflix runs about 2,800 Java applications, mostly microservices. | |
| PHP | ●●● strong | WordPress and MediaWiki run on it. | |
| Python | ●●● strong | Django and Flask are the common web frameworks. | |
| Ruby | ●●● strong | Rails is the main framework; GitHub and Shopify run on it. | |
| Bash | ●●○ ok | ||
| C | ●●○ ok | ||
| C++ | ●●○ ok | ||
| JavaScript | ●●○ ok | Node.js runs it on servers; PayPal moved its consumer web apps to it in 2013. | |
| Kotlin | ●●○ ok | Spring Boot supports Kotlin and requires Kotlin 2.2 or later. | |
| TypeScript | ●●○ ok | Runs on Node.js after compilation. | |
| Dart | ●○○ weak | ||
| Swift | ●○○ weak | Server frameworks such as Vapor exist, but server use is small. | |
| SQL | ○○○ none | SQL runs inside the database server; it is not a language for writing the server. |
Users held: best entry per language in the multicore-server-challenge, the same API on the same 8 vCPU / 16 GB server with Postgres. A number says what hardware buys you, not which language is better.