3

We are currently using epoll based implementation on Linux. We plan to port our software to mac and hence looking for platform independent approach. I looked at libevent2 and libuv, both seem to be fitting our requirement. However, I would like to get suggestions from the people who have used both. I read some comparisons but they are quite old to be meaningful now:

  • libuv seems to be more popular than libevent
  • 90% of our client connections are using TLS, and hence ease to use with SSL socket is mandatory. We are currently using boringssl and we are okay to use openssl too.
  • multithreading support
  • minimum buffer copy. It seems evbuffer in libevent is double copy approach which we'd like to avoid. They have peek API which may partially solve it but we yet to explore more.

Any other suggestions you might have on libevent, libuv or any other such options (no boost please).

gavv
  • 4,649
  • 1
  • 23
  • 40
Rahul
  • 390
  • 4
  • 14
  • libuv as you said is more popular and is more active project, but it lacks SSL/TLS support but adding support is easy, have done prelim work at https://github.com/deleisha/evt-tls – dlmeetei Dec 09 '19 at 05:38
  • 1
    thanks for the link and your excellent work. However, we would prefer that library supports it natively as we plan to move away from handling platform dependent code right now (that's another reason we are moving away from home-grown implementation). – Rahul Dec 09 '19 at 05:53
  • Maybe ask here? https://softwarerecs.stackexchange.com/ – rogerdpack Nov 02 '22 at 06:27

0 Answers0