Thanks for the response Eric.

I must admit I had thought the backlog count would not include the current connections. However when testing I also tried a greater number for backlog e.g.

connectionBacklog = 200
connectionLimit = 1

And I'm still only able to make one connection and all subsequent connections are immediately rejected. Has anyone seen backlog working in james?

Phillip

On 2/12/13 1:46 AM, Eric Charles wrote:
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: [email protected]
For additional commands, e-mail: [email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]




---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to