activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Filip Hanik - Dev Lists <devli...@hanik.com>
Subject Re: Question about Producer Consumer usage
Date Wed, 14 May 2008 02:02:09 GMT
paste it into the email or provide a link to it,
attachment dont make it to the user list

Filip

jaya_srini wrote:
> Hi Filip
>
> I have attached the file "thread_dump.txt" that gives the thread-dump.
>
> if you need more info please let me know.
>
> thanks!
> jaya
>
>
> Filip Hanik - Dev Lists wrote:
>   
>> that is a thread dump for one (1) thread, why don't you post the entire 
>> thread dump for all threads
>>
>> Filip
>>
>> jaya_srini wrote:
>>     
>>> thanks for the response, Filip!
>>>
>>> Thread dump below is what we got on the client side. I'll try and see if
>>> I
>>> can get a better dump. So what would be the resolution for this? Will
>>> enabling the jms.useAsyncSend property on the connection URI help fix
>>> this
>>> i.e cause the send to be asynchronous so that it doesn't block?
>>>
>>> daemon prio=6 tid=0x3793f400 nid=0x1f28 waiting for monitor entry
>>> [0x38aff000..0x38affc98]
>>>    java.lang.Thread.State: BLOCKED (on object monitor)
>>> 	at org.apache.activemq.ActiveMQSession.send(ActiveMQSession.java:1587)
>>> 	- waiting to lock <0x07c45ea0> (a java.lang.Object)
>>> 	at
>>> org.apache.activemq.ActiveMQMessageProducer.send(ActiveMQMessageProducer.java:226)
>>> 	at
>>> org.apache.activemq.ActiveMQMessageProducerSupport.send(ActiveMQMessageProducerSupport.java:268)
>>> 	at
>>> org.apache.activemq.ActiveMQTopicPublisher.publish(ActiveMQTopicPublisher.java:146)
>>>
>>>
>>> Filip Hanik - Dev Lists wrote:
>>>   
>>>       
>>>> as I mentioned, the blocking happens on the mutex for an 
>>>> ActiveMQSession, the only way you can end up blocking two threads there,

>>>> is if two threads are using the same session,
>>>>
>>>> can you post the complete thread dump?
>>>>
>>>> thanks
>>>> Filip
>>>>
>>>> jaya_srini wrote:
>>>>     
>>>>         
>>>>> So Sorry! :(
>>>>>
>>>>> I just thought I would explain our scenario in more details.
>>>>>
>>>>>
>>>>> jaya_srini wrote:
>>>>>   
>>>>>       
>>>>>           
>>>>>> Hello
>>>>>>
>>>>>> Apologies for all the questions but I am a newbie to ActiveMQ and
I
>>>>>> would
>>>>>> really like to better understand how the ActiveMQ broker works and
was
>>>>>> wondering if someone can explain how it would work for the scenario
>>>>>> below:
>>>>>>
>>>>>> I am using single session with 1 producer and 1 consumer (durable
>>>>>> Topic
>>>>>> subscrber) for producing and consuming messages i.e the same session
>>>>>> produces and consumes messages. The session/producer/consumer are
>>>>>> created
>>>>>> in app startup once and are reused through out.
>>>>>>
>>>>>> There is a message listener on the consumer for receiving messages
>>>>>> asynchrounously. 
>>>>>>
>>>>>> Messages are persistent (written to the database) and we are using
the
>>>>>> Publish-Subscribe model.
>>>>>>
>>>>>> The client APP (that send and receives the message) and the ActiveMQ
>>>>>> broker are on different machines so I use a TCP transport to establish
>>>>>> connection with a failover protocol so the connection URI looks like
>>>>>> below
>>>>>>
>>>>>> failover:(tcp://<broker_ip>:61616/)
>>>>>>
>>>>>> We are using ActiveMq 5.0.0
>>>>>>
>>>>>> Given the above info, what is the number of threads created on the
>>>>>> broker
>>>>>> side for sending and dispatching. Will the send and dispatch be
>>>>>> synchronous by default for the above?
>>>>>>
>>>>>> If I make the connection URI to be as follows
>>>>>>
>>>>>> tcp://<broker_ip>:61616?jms.useAsyncSend=true&jms.dispatchAsync=true
>>>>>>
>>>>>> will this cause the send and dispatch to be asynchronous?
>>>>>>
>>>>>> We are having some porblem with producer bloacking on
>>>>>> ActiveMQSession.send() with our current set up and I would like to
>>>>>> really
>>>>>> understand what's happening to be able to resolve this.
>>>>>>
>>>>>> thank you!
>>>>>> jaya
>>>>>>
>>>>>>     
>>>>>>         
>>>>>>             
>>>>>   
>>>>>       
>>>>>           
>>>>     
>>>>         
>>>   
>>>       
>>
>>     
> http://www.nabble.com/file/p17221085/thread_dump.txt thread_dump.txt 
>   


Mime
View raw message