[erlang-questions] Why does "+K true" degrade TCP/IP performance?

Sergey S <>
Fri Jan 16 01:48:27 CET 2009


While I was looking for a way to speed up handling TCP-requests in my
gen_tcp application, I found out this option enabling kernel polling.
I heard that lighttpd/nginx both use epoll/kqueue to make working with
sockets really fast. But against expectation it didn't speed up my
app. Furthermore, when I was using "+K true", my app was working a bit
slower. 8913 requests per second without "+K true" against 8264 r/s
with one (I used Apache Benchmark utility to test that).

Is there people who using benefits of "+K true"? Please tell me, what
should I use it for?

I guess it will be useful during real high network load (especially
when there are thousands of connections), but my test says "don't use
it".

Thanks.

--
Sergey.



More information about the erlang-questions mailing list