[erlang-questions] listen() backlog limited to 16 bits?
Steven Grady
sgrady@REDACTED
Tue Apr 28 01:42:54 CEST 2009
On Apr 27, 2009, at 3:53 PM, Matthew Dempsky wrote:
> On Mon, Apr 27, 2009 at 10:30 AM, Steven Grady <sgrady@REDACTED> wrote:
>> As Erlang starts to reside in the world of massively-scaled web
>> servers, 16 bits seems to be unnecessary and ill-chosen limitation.
>> Is there any plan to fix this?
>
> Not arguing against bumping it to 32-bits, but do you actually have
> servers that need to handle more than 65000 yet-unaccepted TCP
> connections? I would expect that if your server regularly has
> thousands of queued TCP connections, that it's way overloaded anyway.
Possibly. Actually, the main problem is that if you pass in a big
number, it gets masked off. if you're unlucky enough to choose a
number like 65536, you'll set it to 0...
In general, we are using mochiweb (modified to use gen_tcp's active
mode) and are only able to handle 1,700 connections a second. We need
to handle probably 5x that. But yeah, we are probably not running
into the 16-bit limit (yet! :-).
Any thoughts on how to increase the numbers of accepts/sec would be
welcome.
Steven
More information about the erlang-questions
mailing list