Still, 128MB is not enough to even run Debian let alone Apache/NGINX. I’m on my phone, but it doesn’t seem like the author is using Cloudflare or another CDN. I’d like to know what they are doing.
* Thin clients with only 256 MiB RAM and 400 MHz are possible, though more RAM and faster processors are recommended.
* For workstations, diskless workstations and standalone systems, 1500 MHz and 1024 MiB RAM are the absolute minimum requirements. For running modern webbrowsers and LibreOffice at least 2048 MiB RAM is recommended.
That's for some educational distro, which presumably is running some fancy desktop environment with fancy GUI programs. I don't think that is reflective of what a web server needs.
A web server is really only going to be running 3 things: init, sshd, and the web server software. Even if we give init and sshd half of 128 MB, there's still 64 MB left for the web server.
Theoretically, sure. But standard Linux distros are much heavier these days. See my other reply on this thread.
Unless the author is using some very slim distribution or perhaps something more interesting, it’s a challenge to run an up to date HTTP server like Apache or nginx on 128MB alone, even though it shouldn’t.
Moving bytes around doesn't take RAM but CPU. Notice how switches don't advertise how many gigabytes of RAM they have, but can push a few gigabits of content around between all 24 ports at once without even going expensive
Also, the HN homepage is pretty tame so long as you don't run WordPress. You don't get more than a few requests per second, so multiply that with the page size (images etc.) and you probably get a few megabits as bandwidth, no problem even for a Raspberry Pi 1 if the sdcard can read fast enough or the files are mapped to RAM by the kernel