Recent submissions

Comment · 2 years ago
Comment · 3 years ago
Comment · 3 years ago
Many things have changed since the old days. In PEP 3333 sendfile is exposed as opposed to PEP 333 (so in the WSGI days they had no way of doing it, but in ASGI they can do it).

The assumption that nginx is always there no longer hold, specially in microservices, ex. Running behind haproxy (does not service static files) or running bechind cloud provides like AWS ALB.

Comment · 3 years ago
As I pointed out in my other comment, serving a static file should be a single call to a kernel routine called sendfile (sendfile in c or in python io.sendfile or loop.sendfile). No loop, no memory copy, no further context switch.

Again if you think I was not fair to fastapi, suggest a change to the fastapi part. Do not cripple the competing solution.

If you want believe the time is wasted by the introduction of uvicorn layer as opposed to pure python implementation, I can run the fastapi in pure python ASGI without that layer, it would be worse. Because you uvicorn is one of the best implements.

Comment · 3 years ago
Comment · 3 years ago
I made it like that to be as fair as possible and as simple as possible. I've done other experiments with same results. If you think I was not fair to the fastapi part feel free to edit the fastapi part in the form of github gist. And give me the link.
Comment · 3 years ago
Comment · 4 years ago
Computers are just infinite tape marked out into squares... (Turing machine). A pyramid is just a stack of cubic rocks.

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton