Quick question .. which version of Merlin are you running on?


Steve.


Scott Brickner wrote:


I've got a network server application I've built to run under Merlin,
and most things are working just fine, with one exception - and it's a
big one.

I've got a component that's responsible for managing new connections
from clients. It uses java.nio and generates SEDA-like events to the
rest of the system to process input data.

My problem comes at system startup. Since most of the world depends (at
least transitively) on this acceptor component, Merlin deploys it first.
It creates the ServerSocketChannel during configure(), and starts a
thread to do the select() in start().

While Merlin's still busily setting up the rest of the components that
make up the application, the clients are already starting to make
connections. These connections back up in the acceptor's output queue
until each of its successor components get deployed.

This wouldn't be unreasonable if there were just a small handful of
connections, but the clients are automatically trying to reconnect when
they lose their connection to the server, so on a server restart I get a
few thousand new connections by the time the system's *really* deployed.

This ends up with the work queues so backed up that the server's
response time goes over the threshold that makes the client think
there's a network problem and re-establish yet *another* connection,
making things even worse.

So, my question is, is there any way I can discover when all of the
"activation='startup'" components have been fully deployed so I can use
that event to trigger the acceptor component to open the flood gates?


--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]




--

|------------------------------------------------|
| Magic by Merlin                                |
| Production by Avalon                           |
|                                                |
| http://avalon.apache.org/merlin                |
| http://dpml.net/merlin/distributions/latest    |
|------------------------------------------------|

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Reply via email to