4 ms·
Jeez this is amazing. Just end to end, rock solid engineering. I came to chime in that this basically hits all the same design beats as go with it's standard li
by kjeetgill 8y ago
Jeez this is amazing. Just end to end, rock solid engineering. I came to chime in that this basically hits all the same design beats as go with it's standard library (relatively low foot print, compiled binary, async user-space threading, etc.) But that sells this work short.
This is amazing work!
- acidx 8y agoThank you! Although I've used a lot of tricks I've learned over the years in this project, I took a lot of inspiration from Go.
- le-mark 8y agoI agree with the caveat I didn't read anything similar to go's work stealing thread scheduling, useful for tasks with synchonized IO for example. What appeals to me is the Lua integration. I'd love for a Lua application server to become widely available. The http servers out there now don't really fit the bill for (Xavante, Luvit for example).
- acidx 8y agoYes, Lwan's thread scheduler is pretty simple, and can be borderline useless if a thread blocks. This 2014 blog post has more details; not much in that regard has changed since then: https://tia.mat.br/posts/2014/10/06/life_of_a_http_request.html https://tia.mat.br/posts/2014/10/06/life_of_a_http_request.h...
- kraftman 8y agoWhat's wrong with openresty?
- le-mark 8y agoFYI "what wrong with X?" is not the same conversation as "Are you familiar with X? It has these great features ...". Great that you want to promotoe you're favorite tech, but there are more effective ways to do it.