activemq-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Rob Davies <rajdav...@gmail.com>
Subject Re: Having some trouble making a simple network...
Date Mon, 16 Oct 2006 10:45:36 GMT
It'll take a week - or so  - simply because I've a lot of other stuff  
to do. It's not a major piece of work - but there's some fiddly  
things to change in the broker to support it - so we've just got to  
be careful not to break anything else.
On 16 Oct 2006, at 08:11, Jason Dillon wrote:

> Any idea how easy this is going to be to implement?  Should it be  
> fairly simple, or a major design change?
>
> --jason
>
>
> On Oct 15, 2006, at 11:38 PM, Rob Davies wrote:
>
>> Hi Jason,
>>
>> I just created a jira for this: http://issues.apache.org/activemq/ 
>> browse/AMQ-979
>>
>> On 16 Oct 2006, at 05:40, Jason Dillon wrote:
>>
>>> How then do I setup a hub/spoke network where the hub does not  
>>> know about all of the spokes, and where the spokes may be behind  
>>> firewalls, only allowing outgoing connections?  I had thought  
>>> that having the remote broker define a network connection to the  
>>> central broker would have been enough to connect them or bi- 
>>> directional message flow.  But it sounds like that is not the  
>>> case based on what you've said.
>>>
>>> How should I configure the brokers assuming that the remote  
>>> brokers maybe behind a firewall then?
>>>
>>> --jason
>>>
>>>
>>> On Oct 15, 2006, at 9:30 PM, Hiram Chirino wrote:
>>>
>>>> Hey Jason,
>>>>
>>>> Not sure what those errors are about, but first off... if network
>>>> connections are only defined from the remote brokers to the  
>>>> central broker,
>>>> then only messages can sent to the central broker.  The central  
>>>> broker will
>>>> not be able to send message back to the remote broker.
>>>>
>>>> Regards,
>>>> Hiram
>>>>
>>>> On 10/15/06, Jason Dillon <jason@planet57.com> wrote:
>>>>>
>>>>> Hiya... I'm having some trouble making a simple broker network for
>>>>> GBuild.  The idea was to embed a broker in each node, and then  
>>>>> have
>>>>> the slave nodes connect to the master node, so that all client  
>>>>> code
>>>>> will always be connected, and let activemq handle broker to broker
>>>>> connectivity.
>>>>>
>>>>> But, I can not seems to get it to work.
>>>>>
>>>>> NOTE: This is not master/slave in terms of broker fail-over... its
>>>>> just hub/spoke where the hub is the master and slave a spoke...  
>>>>> just
>>>>> for clarity on the bits below.
>>>>>
>>>>> My central manager (which is what slave nodes connect to) has:
>>>>>
>>>>> <beans xmlns="http://activemq.org/config/1.0">
>>>>>      <bean
>>>>> class="org.springframework.beans.factory.config.PropertyPlaceholde 
>>>>> rConfi
>>>>> gurer"/>
>>>>>      <broker useJmx="true">
>>>>>          <managementContext>
>>>>>              <managementContext connectorPort="5003"
>>>>> jmxDomainName="org.apache.activemq"/>
>>>>>          </managementContext>
>>>>>          <persistenceAdapter>
>>>>>              <journaledJDBC journalLogFiles="5" dataDirectory="$
>>>>> {gshell.home}/activemq"/>
>>>>>          </persistenceAdapter>
>>>>>          <transportConnectors>
>>>>>              <transportConnector uri="vm://localhost"/>
>>>>>              <transportConnector uri="tcp://localhost:16161"/>
>>>>>          </transportConnectors>
>>>>>      </broker>
>>>>> </beans>
>>>>>
>>>>> And my slave nodes have:
>>>>>
>>>>> <beans xmlns="http://activemq.org/config/1.0">
>>>>>      <bean
>>>>> class="org.springframework.beans.factory.config.PropertyPlaceholde 
>>>>> rConfi
>>>>> gurer"/>
>>>>>      <broker useJmx="true">
>>>>>          <managementContext>
>>>>>              <managementContext connectorPort="5004"
>>>>> jmxDomainName="org.apache.activemq"/>
>>>>>          </managementContext>
>>>>>          <persistenceAdapter>
>>>>>              <journaledJDBC journalLogFiles="5" dataDirectory="$
>>>>> {gshell.home}/activemq"/>
>>>>>          </persistenceAdapter>
>>>>>          <transportConnectors>
>>>>>              <transportConnector uri="vm://localhost"/>
>>>>>          </transportConnectors>
>>>>>          <networkConnectors>
>>>>>              <networkConnector uri="static:(tcp://gbuild.org: 
>>>>> 16161)"
>>>>> failover="true"/>
>>>>>          </networkConnectors>
>>>>>      </broker>
>>>>> </beans>
>>>>>
>>>>> But... for some reason this is not working... and I don't know  
>>>>> why.
>>>>> Connectivity is good, as when I change the slave client's to  
>>>>> connect
>>>>> with "tcp://gbuild.org:16161" instead of "vm://localhost"  
>>>>> everything
>>>>> works fine.
>>>>>
>>>>> But when the slaves use "vm://localhost" then they never see any
>>>>> messages, and the master node complains with "No subscriptions
>>>>> registered, will not dispatch message at this time" when new  
>>>>> messages
>>>>> are queued... though when the slave starts I do see it  
>>>>> connecting to
>>>>> gbuild.org:16161 and I see the master node create a consumer  
>>>>> for the
>>>>> client (and remove it when I stop the slave).
>>>>>
>>>>> Not sure if this matters, but I also see these logs on the  
>>>>> master node:
>>>>>
>>>>> <snip>
>>>>> 19:54:45,283 DEBUG [Service] Async error occurred:
>>>>> java.lang.NullPointerException
>>>>> java.lang.NullPointerException
>>>>>          at
>>>>> edu.emory.mathcs.backport.java.util.concurrent.ConcurrentHashMap.h 
>>>>> ash
>>>>> (ConcurrentHashMap.java:154)
>>>>>          at
>>>>> edu.emory.mathcs.backport.java.util.concurrent.ConcurrentHashMap.g 
>>>>> et
>>>>> (ConcurrentHashMap.java:759)
>>>>>          at
>>>>> org.apache.activemq.broker.AbstractConnection.processAddConnection
>>>>> (AbstractConnection.java:616)
>>>>>          at
>>>>> org.apache.activemq.broker.jmx.ManagedTransportConnection.processA 
>>>>> ddConn
>>>>> ection(ManagedTransportConnection.java:87)
>>>>>          at org.apache.activemq.command.ConnectionInfo.visit
>>>>> (ConnectionInfo.java:121)
>>>>>          at org.apache.activemq.broker.AbstractConnection.service
>>>>> (AbstractConnection.java:238)
>>>>>          at org.apache.activemq.broker.TransportConnection 
>>>>> $1.onCommand
>>>>> (TransportConnection.java:63)
>>>>>          at  
>>>>> org.apache.activemq.transport.ResponseCorrelator.onCommand
>>>>> (ResponseCorrelator.java:95)
>>>>>          at  
>>>>> org.apache.activemq.transport.TransportFilter.onCommand
>>>>> (TransportFilter.java:65)
>>>>>          at
>>>>> org.apache.activemq.transport.WireFormatNegotiator.onCommand
>>>>> (WireFormatNegotiator.java:133)
>>>>>          at  
>>>>> org.apache.activemq.transport.InactivityMonitor.onCommand
>>>>> (InactivityMonitor.java:122)
>>>>>          at  
>>>>> org.apache.activemq.transport.TransportSupport.doConsume
>>>>> (TransportSupport.java:84)
>>>>>          at org.apache.activemq.transport.tcp.TcpTransport.run
>>>>> (TcpTransport.java:136)
>>>>>          at java.lang.Thread.run(Thread.java:595)
>>>>> 19:54:45,284 DEBUG [Transport] Transport failed:  
>>>>> java.io.IOException:
>>>>> Unknown data type: 68
>>>>> java.io.IOException: Unknown data type: 68
>>>>>          at  
>>>>> org.apache.activemq.openwire.OpenWireFormat.doUnmarshal
>>>>> (OpenWireFormat.java:344)
>>>>>          at org.apache.activemq.openwire.OpenWireFormat.unmarshal
>>>>> (OpenWireFormat.java:275)
>>>>>          at org.apache.activemq.transport.tcp.TcpTransport.run
>>>>> (TcpTransport.java:135)
>>>>>          at java.lang.Thread.run(Thread.java:595)
>>>>> </snip>
>>>>>
>>>>> I'm using the latest 4.1-incubator-SNAPSHOT in m2:
>>>>>
>>>>> <dependency>
>>>>>      <groupId>org.apache.activemq</groupId>
>>>>>      <artifactId>activeio-core</artifactId>
>>>>>      <version>3.0-SNAPSHOT</version>
>>>>> </dependency>
>>>>>
>>>>> <dependency>
>>>>>      <groupId>org.apache.activemq</groupId>
>>>>>      <artifactId>activemq-core</artifactId>
>>>>>      <version>4.1-incubator-SNAPSHOT</version>
>>>>> </dependency>
>>>>>
>>>>>   * * *
>>>>>
>>>>> I really want to get this broker network working so that the  
>>>>> client
>>>>> code can be free from reconnect fluff... and just assume that the
>>>>> local embedded broker will handle all inter-broker connectivity  
>>>>> issues.
>>>>>
>>>>> Anyone have any idea what's wrong?
>>>>>
>>>>> Thanks,
>>>>>
>>>>> --jason
>>>>>
>>>>
>>>>
>>>>
>>>> -- 
>>>> Regards,
>>>> Hiram
>>>>
>>>> Blog: http://hiramchirino.com
>>>
>>
>


Mime
View raw message