Threads & New Connections

Norman Maurer norman.maurer at googlemail.com
Thu Oct 6 01:11:28 EDT 2011


Are you 100 % sure you are not calling it ? With a database lookup in
place you will need to use an ExecutionHandler to offload the task as
otherwise you will block your IO-Thread.

Maybe you could also attach an thread-dump (via jstack) and show use
how your ChannelPipelineFactory implementations looks like.

Bye,
Norman


2011/10/5 irwinbilling <irwin.billing at gmail.com>:
> The handleUserSearch method performs a simple database search and writes the
> result to the given channel.  I do not call the method during my tests.  I
> only call logout.
>
>
> Norman Maurer-2 wrote:
>>
>> What does handleUserSearch((MessageUserSearch) message, channel); do ?
>>
>> 2011/10/4 irwinbilling &lt;irwin.billing@&gt;:
>>> Code:
>>> public void messageReceived(ChannelHandlerContext ctx, MessageEvent e) {
>>>
>>>                Message message_new = (Message) e.getMessage();
>>>
>>>                if (message instanceof MessageLogout) {
>>>                        logout((MessageLogout) message);
>>>                } else if (message instanceof MessageUserSearch) {
>>>                        handleUserSearch((MessageUserSearch) message,
>>> channel);
>>>                }
>>>
>>>                super.handleMessage(message, channel);
>>>        }
>>> public void channelClosed(ChannelHandlerContext ctx, ChannelStateEvent e)
>>>                        throws Exception {
>>>                if (channel != null) {
>>>                channel.getCloseFuture().removeListener(remover);
>>>
>>>                channel.close();
>>>                }
>>>                super.channelClosed(ctx, e);
>>>        }
>>>
>>>
>>> "channel" is a cached Channel for this connection.  Could holding onto a
>>> channel reference be causing this.
>>>
>>> 2011/10/4 irwinbilling &lt;irwin.billing@&gt;:
>>>> Hello,
>>>>
>>>> I seem to be running into a very peculiar problem.  Using the default
>>>> ChannelFactory (Executors.newCachedThreadPool()) with a custom
>>>> ChannelPipeline, the server seems to stop serving new connections after
>>>> 39
>>>> successful connections and message exchanges.
>>>>
>>>> When looking at the list of running threads, it seems that for every new
>>>> connection, a new thread is started.  When the channel disconnects, the
>>>> thread stays alive (waiting at Unsafe.park).  This happens until the
>>>> 40th
>>>> connection when the CHannelFactory.getPipeline() does not get called.
>>>>
>>>> What could cause an issue of this sort?
>>>>
>>>> Thanks!
>>>>
>>>> --
>>>> View this message in context:
>>>> http://netty-forums-and-mailing-lists.685743.n2.nabble.com/Threads-New-Connections-tp6859861p6859861.html
>>>> Sent from the Netty User Group mailing list archive at Nabble.com.
>>>> _______________________________________________
>>>> netty-users mailing list
>>>> netty-users at .jboss
>>>> https://lists.jboss.org/mailman/listinfo/netty-users
>>>>
>>>
>>> _______________________________________________
>>> netty-users mailing list
>>> netty-users at .jboss
>>> https://lists.jboss.org/mailman/listinfo/netty-users
>>>
>>>
>>>
>>> --
>>> View this message in context:
>>> http://netty-forums-and-mailing-lists.685743.n2.nabble.com/Threads-New-Connections-tp6859861p6859943.html
>>> Sent from the Netty User Group mailing list archive at Nabble.com.
>>>
>>> _______________________________________________
>>> netty-users mailing list
>>> netty-users at .jboss
>>> https://lists.jboss.org/mailman/listinfo/netty-users
>>
>> _______________________________________________
>> netty-users mailing list
>> netty-users at .jboss
>> https://lists.jboss.org/mailman/listinfo/netty-users
>>
>
>
> --
> View this message in context: http://netty-forums-and-mailing-lists.685743.n2.nabble.com/Threads-New-Connections-tp6859861p6863424.html
> Sent from the Netty User Group mailing list archive at Nabble.com.
>
> _______________________________________________
> netty-users mailing list
> netty-users at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/netty-users



More information about the netty-users mailing list