Hi,

If you set backlog=1, the socket can not queue more than one request at a time. So if the socket is already busy with one connection, a second connection request will be simply rejected. The backlog property is given to netty for its bootstrap.

The connectionLimit is implemented with Netty handlers which rejects connection if you have already more open connection than the given number.

Thx, Eric


On 11/02/2013 16:47, Phillip Odam wrote:
Can anyone confirm successful use of connectionBacklog for the smtp
service on james 3.0 beta4 (or any v3). Successful use of
connectionBacklog for any of the other services e.g. imap, lmtp and pop3
is also of interest as under the covers the code is all common.

Firstly I gather the connectionBacklog setting is controlling the
backlog just as is done in
http://docs.oracle.com/javase/6/docs/api/java/net/ServerSocket.html

Secondly comparing the code
  -
http://svn.apache.org/repos/asf/james/protocols/trunk/netty/src/main/java/org/apache/james/protocols/netty/AbstractAsyncServer.java

  -
http://svn.apache.org/repos/asf/james/protocols/tags/protocols-1.6.2/netty/src/main/java/org/apache/james/protocols/netty/AbstractAsyncServer.java


reports no differences so apart from the different versions of netty
between beta4 and where beta5 development is there should be no
difference with the backlog between beta4 and the current development
stream.


Changing the connectionBacklog value does cause the startup log entry
(SMTP Service connection backlog is: XXX) to change accordingly, however...

SETUP
-----

connectionBacklog = 1
connectionLimit = 1

TESTING
-------

With two command lines, use telnet to connect to the smtp service, the
first telnet instance will establish a connection.

The second instance reports back immediately that a connection can not
be established, whereas I would expect the second instance to hang and
either establish a connection when the first telnet instance disconnects
or a timeout occurs.


Testing thus far has not been in a controlled environment so the backlog
issue may well not be with james, but before I go much further I wanted
to see what anyone else out there is seeing.

Thanks
Phillip

---------------------------------------------------------------------
To unsubscribe, e-mail: server-user-unsubscr...@james.apache.org
For additional commands, e-mail: server-user-h...@james.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: server-user-unsubscr...@james.apache.org
For additional commands, e-mail: server-user-h...@james.apache.org

Reply via email to