Yes, I use uv_poll_t instead of uv_tcp_t because of massive memory and performance differences.
Every decision made, has been made from a performance perspective.
Every decision made, has been made from a performance perspective.
I do not know what the overhead of uv_poll_t is compared to epoll/kqueue but I think it's a good balance to depend on libuv in this case, and since we need to integrate with Node.js it is kind of required.
I would much rather use mTCP to further improve the performance but then this project would not be as relevant to most developers. Performance & relevance is key - it can be optimized further by using mTCP and such.