Threads & New Connections

Norman Maurer norman.maurer at googlemail.com
Thu Oct 6 16:27:29 EDT 2011


I think the interesting thing is not the thread count. Its the count of th
active threads...

bye
norman

Am Donnerstag, 6. Oktober 2011 schrieb irwinbilling <irwin.billing at gmail.com
>:
> Terrible mistake.  I had a loose connection to the database for every
client
> that wasn't getting closed.  The problem seems to have disappeared.
> Although, threads continue to be made.  I tried connecting clients until
the
> thread count reached 90 (the connections were all closed explicitly).  Is
> this normal behavior?
>
> Thanks,
> Irwin
>
>
> Norman Maurer-2 wrote:
>>
>> 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 &lt;irwin.billing@&gt;:
>>> 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<View this message in context:
http://netty-forums-and-mailing-lists.685743.n2.nabble.com/Threads-New-Connections-tp6859861p6867246.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
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/netty-users/attachments/20111006/60ab2add/attachment.html 


More information about the netty-users mailing list