3 ms·
The fact it is using three different entirely HTTP libraries to be able to support HTTP/1, 2 and 3 is kind of telling on the complexity of modern HTTP.
by ngrilly 4y ago
The fact it is using three different entirely HTTP libraries to be able to support HTTP/1, 2 and 3 is kind of telling on the complexity of modern HTTP.
- ciprian_craciun 4y ago[Kawipiko's author here] The main HTTP "engine" behind Kawipiko is `fasthttp`, <https://github.com/valyala/fasthttp https://github.com/valyala/fasthttp> that supports only HTTP/1.1 (with or without TLS). However for experimentation I've also integrated HTTP/2 and HTTP/3 support, although the performance isn't that great... In fact, there is one ticket open on `fasthttp` about HTTP/2 support, however (as I've also commented on this issue), I don't think that's the way to go for the intended use-cases: <https://github.com/valyala/fasthttp/issues/144 https://github.com/valyala/fasthttp/issues/144> My current opinion is this: HTTP/2, and especially HTTP/3, are mainly meant for CDN's and highly performant HTTP load-balancers (like HAProxy), meanwhile HTTP/1.1 is the best solution for the backend.