I’m pretty sure most languages, even interpreted, can run at least small programs in 64MB. If you want to minimize memory usage at all costs, I think you’d want a non-GC compiled language (C(++), Swift and Rust come to mind).
You can forget about Node.js, Python or Ruby for any meaningful app, like a web API. Erlang/Elixir is also iffy, I'm pretty sure. Java, last I check, had a default heap size of 64MB, and does badly on less.
I've written small Go programs that can consume around 15-20MB on low traffic. But they also have huge spikes in memory usage when you have concurrent requests hitting them.
I've written small Go programs that can consume around 15-20MB on low traffic. But they also have huge spikes in memory usage when you have concurrent requests hitting them.