Another confusion abount forwarding messages and back.
The lastest release version such as apache-activemq-5.5.1-fuse-01-06 and 
apache-activemq-5.5.1-fuse-01-11 has added a new conditionalNetworkBridgeFilter 
to allow messages to be forwarded back to the original broker where it come 
from.
while in the forward process,forward bridge does not set new messageId for the 
message.
Duplicate audit will be applied when the message comes back from the remote 
broker and it will be recognized to be duplicate message and suppressed, won't 
it?
Counld someone make me clear?
Thanks.


At 2011-12-07 12:36:31,SuoNayi <[email protected]> wrote:
>I have tested apache-activemq-5.5.1-fuse-01-06 and 
>apache-activemq-5.5.1-fuse-01-11 and they don't work as well.
>I'm depressed so much after lots of tests.
>My configuration files are the following:
>------------------------------------------------------------------------------------------------------------------------------------------------------------------------
><beans
>  xmlns="http://www.springframework.org/schema/beans";
>  xmlns:amq="http://activemq.apache.org/schema/core";
>  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
>  xsi:schemaLocation="http://www.springframework.org/schema/beans 
> http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
>  http://activemq.apache.org/schema/core 
> http://activemq.apache.org/schema/core/activemq-core.xsd";>
>
>    <bean 
> class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"/>
>
>    <broker xmlns="http://activemq.apache.org/schema/core"; 
> brokerName="mybroker1" dataDirectory="${activemq.base}/data">
>
>        <destinationPolicy>
>            <policyMap>
>                <policyEntries>
>                    <policyEntry queue=">" producerFlowControl="false" 
> memoryLimit="512mb">
>                        <networkBridgeFilterFactory>
>                            <conditionalNetworkBridgeFilterFactory 
> replayWhenNoConsumers="true" />
>                        </networkBridgeFilterFactory>
>                    </policyEntry>
>                    <policyEntry topic=">" producerFlowControl="true" 
> memoryLimit="20mb">
>                    </policyEntry>
>                </policyEntries>
>            </policyMap>
>        </destinationPolicy>
>
>        <managementContext>
>            <managementContext createConnector="true"/>
>        </managementContext>
>
>        <networkConnectors>
>            <networkConnector     uri="multicast://default?group=knet"
>                                  name="nc1"
>                                duplex="true"
>                                networkTTL="6"
>                                dynamicOnly="true"
>                                prefetchSize="1"
>                                conduitSubscriptions="true"
>                                suppressDuplicateQueueSubscriptions="true"
>                                suppressDuplicateTopicSubscriptions="true"
>                                decreaseNetworkConsumerPriority="true" />
>        </networkConnectors>
>       
>        <persistenceAdapter>
>            <kahaDB directory="${activemq.base}/data/kahadb" 
> enableJournalDiskSyncs="false" indexWriteBatchSize="10000" 
> indexCacheSize="1000"/>
>        </persistenceAdapter>
>       
>        <systemUsage>
>            <systemUsage>
>                <memoryUsage>
>                    <memoryUsage limit="1 gb"/>
>                </memoryUsage>
>                <storeUsage>
>                    <storeUsage limit="10 gb" name="foo"/>
>                </storeUsage>
>                <tempUsage>
>                    <tempUsage limit="1 gb"/>
>                </tempUsage>
>            </systemUsage>
>        </systemUsage>
>
>        <transportConnectors>
>            <transportConnector name="openwire" uri="tcp://0.0.0.0:61616" 
> discoveryUri="multicast://default?group=knet" />
>        </transportConnectors>
>       
>
>    </broker>
>    <import resource="jetty.xml"/>
></beans>
>------------------------------------------------------------------------------------------------------------------------------------------------------
><beans
>  xmlns="http://www.springframework.org/schema/beans";
>  xmlns:amq="http://activemq.apache.org/schema/core";
>  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
>  xsi:schemaLocation="http://www.springframework.org/schema/beans 
> http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
>  http://activemq.apache.org/schema/core 
> http://activemq.apache.org/schema/core/activemq-core.xsd";>
>
>    <bean 
> class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"/>
>
>    <broker xmlns="http://activemq.apache.org/schema/core"; 
> brokerName="mybroker2" dataDirectory="${activemq.base}/data">
>
>        <destinationPolicy>
>            <policyMap>
>                <policyEntries>
>                    <policyEntry queue=">" producerFlowControl="false" 
> memoryLimit="512mb">
>                        <networkBridgeFilterFactory>
>                            <conditionalNetworkBridgeFilterFactory 
> replayWhenNoConsumers="true" />
>                        </networkBridgeFilterFactory>
>                    </policyEntry>
>                    <policyEntry topic=">" producerFlowControl="true" 
> memoryLimit="20mb">
>                    </policyEntry>
>                </policyEntries>
>            </policyMap>
>        </destinationPolicy>
>
>        <managementContext>
>            <managementContext createConnector="false"/>
>        </managementContext>
>
>        <networkConnectors>
>            <networkConnector     uri="multicast://default?group=knet"
>                                  name="nc2"
>                                duplex="true"
>                                networkTTL="6"
>                                dynamicOnly="true"
>                                prefetchSize="1"
>                                conduitSubscriptions="true"
>                                suppressDuplicateQueueSubscriptions="true"
>                                suppressDuplicateTopicSubscriptions="true"
>                                decreaseNetworkConsumerPriority="true" />
>        </networkConnectors>
>       
>        <persistenceAdapter>
>            <kahaDB directory="${activemq.base}/data/kahadb" 
> enableJournalDiskSyncs="false" indexWriteBatchSize="10000" 
> indexCacheSize="1000"/>
>        </persistenceAdapter>
>       
>        <systemUsage>
>            <systemUsage>
>                <memoryUsage>
>                    <memoryUsage limit="1 gb"/>
>                </memoryUsage>
>                <storeUsage>
>                    <storeUsage limit="10 gb" name="foo"/>
>                </storeUsage>
>                <tempUsage>
>                    <tempUsage limit="1 gb"/>
>                </tempUsage>
>            </systemUsage>
>        </systemUsage>
>
>        <transportConnectors>
>            <transportConnector name="openwire" uri="tcp://0.0.0.0:61616" 
> discoveryUri="multicast://default?group=knet" />
>        </transportConnectors>
>       
>
>    </broker>
>    <import resource="jetty.xml"/>
></beans>
>---------------------------------------------------------------------------------------------------------------------------------------------------------
>
>
>
>
>At 2011-12-07 00:05:42,"Torsten Mielke" <[email protected]> wrote:
>>Yep, the latest release version. 
>>I have already seen a customer using it. 
>>
>>
>>
>>On Dec 6, 2011, at 5:02 PM, SuoNayi wrote:
>>
>>> Thanks Torsten,It's the release version not snapshot version,right?
>>> 
>>> http://repo.fusesource.com/nexus/content/repositories/releases/org/apache/activemq/apache-activemq/5.5.1-fuse-01-06/
>>> 
>>> 
>>> 
>>> 
>>> At 2011-12-06 23:44:49,"Torsten Mielke" <[email protected]> wrote:
>>>> The latest 5.5 release from FuseSource should already have this feature 
>>>> implemented, AFAIK.
>>>> 
>>>> 
>>>> On Dec 6, 2011, at 3:43 PM, SuoNayi wrote:
>>>> 
>>>>> Yes, it's a feature of AMQ 5.6 which is not released yet.
>>>>> The trunk is a snapshot version but I want a release version for my 
>>>>> product enviroment.
>>>>> So I want to modify some to solve this issue.
>>>>> 
>>>>> 
>>>>> 
>>>>> 
>>>>> At 2011-12-06 19:44:36,"Torsten Mielke" <[email protected]> wrote:
>>>>>> Hi,
>>>>>> 
>>>>>> Is it the replayWhenNoConsumers feature that you're looking for?
>>>>>> 
>>>>>> <conditionalNetworkBridgeFilterFactory replayWhenNoConsumers="true" />
>>>>>> 
>>>>>> See http://activemq.apache.org/networks-of-brokers.html, part "Stuck 
>>>>>> messages".
>>>>>> 
>>>>>> 
>>>>>> Torsten Mielke
>>>>>> [email protected]
>>>>>> [email protected]
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>> On Dec 6, 2011, at 6:54 AM, SuoNayi wrote:
>>>>>> 
>>>>>>> Hi all and professionals at fusesource, is there a simple way to solve 
>>>>>>> the issuse of stuck messages when network?
>>>>>>> Could I modify some source code ,for example the 
>>>>>>> matchesForwardingFilter method in the class NetworkBridgeFilter ?
>>>>>>> I want to annotate the line code which checks a message passes through 
>>>>>>> the target broker or not,
>>>>>>> but this maybe cause other potential and unknown problem.
>>>>>>> So could anyone give me a advice or some tips?Thanks a lot!
>>>>>> 
>>>>>> 
>>>>>> 
>>>> 
>>>> Torsten Mielke
>>>> [email protected]
>>>> [email protected]
>>
>
>
>
>
>--
>
>Wangyin
>[email protected] 
> 

Reply via email to