Hacker News new | ask | show | jobs
by vlovich123 872 days ago
There 100% is. You’re thinking about user space context. But establishing a new socket in the kernel requires a fair amount of under the covers book keeping and the total number of file descriptors keeping those resources alive is a real problem for very popular web services that have to handle lots of concurrent simultaneous connections. At the application layer it’s less of an issue.

HTTP/2 is indeed more complex to maintain in the application layer but that’s less to do with the memory implications of multiplexing requests /responses over a single TCP connection.

1 comments

There is no requirement for TCP to be implemented in the kernel; if anything all of the highest-performing implementations are in userland.