Return-Path: Delivered-To: apmail-activemq-users-archive@www.apache.org Received: (qmail 23520 invoked from network); 14 Aug 2009 07:41:52 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 14 Aug 2009 07:41:52 -0000 Received: (qmail 91256 invoked by uid 500); 14 Aug 2009 07:41:59 -0000 Delivered-To: apmail-activemq-users-archive@activemq.apache.org Received: (qmail 91213 invoked by uid 500); 14 Aug 2009 07:41:58 -0000 Mailing-List: contact users-help@activemq.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: users@activemq.apache.org Delivered-To: mailing list users@activemq.apache.org Received: (qmail 91201 invoked by uid 99); 14 Aug 2009 07:41:55 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 14 Aug 2009 07:41:55 +0000 X-ASF-Spam-Status: No, hits=2.2 required=10.0 tests=HTML_MESSAGE,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of gary.tully@gmail.com designates 72.14.220.159 as permitted sender) Received: from [72.14.220.159] (HELO fg-out-1718.google.com) (72.14.220.159) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 14 Aug 2009 07:41:45 +0000 Received: by fg-out-1718.google.com with SMTP id 13so35645fge.21 for ; Fri, 14 Aug 2009 00:41:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:in-reply-to:references :date:message-id:subject:from:to:content-type; bh=XFPU6F0UYuHZOtwXTO3+ORvOjhwnvikLGjQzeqjuJxo=; b=rU9p0oa5ZK+X/D/QZzt0agBeKUjAXhjBhXXvOa2D/EcoAk34ucMkG9nqx75fYxuf+E d2bZDV5FDFvrZSXBHb9bLrnhJ7Ze94tlZ+Gqb53VTULY9TnerzcnUBSRoPqjqDtXD3Yg 8axuR9zkjUXVUCeJE7HEmDhb1HhFPgBBAOmgc= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type; b=PaKh6jw2S5stDE8HbWNO3jxip6ck42X9MMZxRC0Hrcjyt7HXeNRSHNE7kXloQt0UHG yEvbcCG8uZV+8biCr+UNUHarym6T4XNXsCzkgq60NFq7J2kH7l1qhv4oWBEVCvBF6wu9 wGoirNVnR5UuUt7N5PSfIA6/6uhICq4I89t/0= MIME-Version: 1.0 Received: by 10.86.181.6 with SMTP id d6mr1096549fgf.29.1250235683342; Fri, 14 Aug 2009 00:41:23 -0700 (PDT) In-Reply-To: <8B09E4BC9CCF0C408293D73FC4BCE006268664@VOO-EXCHANGE08.internal.sungard.corp> References: <8B09E4BC9CCF0C408293D73FC4BCE006268664@VOO-EXCHANGE08.internal.sungard.corp> Date: Fri, 14 Aug 2009 08:41:23 +0100 Message-ID: <3a73c17c0908140041l59e2506dmc171a6df2a29c1f2@mail.gmail.com> Subject: Re: conduit subscriptions From: Gary Tully To: users@activemq.apache.org Content-Type: multipart/alternative; boundary=00c09ffb568eca89af0471152df6 X-Virus-Checked: Checked by ClamAV on apache.org --00c09ffb568eca89af0471152df6 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit along with virtual topics, consider adding two network connectors, one that matches topics, the other that matches queues. In this way you can have your required configuration for the conduit variable Also, consider a move to a 5.3-SNAPSHOT, where selectors are propagated (with conduit subs off) http://issues.apache.org/activemq/browse/AMQ-2104 2009/8/11 > Hey, > > We use both topics and queues alongside selectors, ActiveMQ 5.2, and we > were intending to go live using a network of brokers and the clients > using the failover: protocol. > > Unfortunately, due to how conduit subscriptions work we will start with > a single broker for now, until we can figure out a good way of doing it. > The problem is that conduit subscriptions make it difficult to use > either topics or queues depending on if you have it set to on or off. > > For instance, with conduit subscriptions turned off, you get duplicate > messages. This quickly gets out of hand if you add more brokers. If you > have two consumers on broker A and send a message to their topic on > broker B, each consumer receives the message twice. If you add another > broker and send the message to one of the brokers that is remote to the > consumers each consumer now gets 6 messages. Add another consumer and > each consumer now gets the message 12 times, etc. It very quickly gets > out of hand, so having conduit subscriptions turned off is a no go. > > On the other hand, with conduit subscriptions turned on you now run into > problems with queues. With two consumers on broker A and one consumer on > broker B the messages get distributed unevenly, if 20 messages are sent > to broker B its lone consumer gets 10 messages, and the other 10 are > sent to broker A where each consumer only gets 5 messages each. > Furthermore if you are using selectors (which we are) then if it so > happened that the 10 messages that went to the consumers on broker A > didn't match the selectors then those 10 messages would just be stuck on > the queue on broker A. So having conduit subscriptions turned on is > firstly impractical since the messages to queues are distributed > unevenly, and if you are using selectors it doesn't work at all. > > So the situation we are in is that we can't have conduit subscriptions > turned on because of our queues and we can't have it turned off because > of our topics. Yes we could refactor and stop using selectors, but our > messages would still be distributed unevenly. > > It strikes me that if conduit subscriptions could be turned on and off > independently between queues and topics things would work; we could have > it turned on for topics and off for queues, and everything would work. > > For those of you that have looked more at the ActiveMQ internals than I > have, would this be a difficult change to make? > > > -- > Mats Henrikson > Software Engineer > SunGard Kiodex > > Think before you print > > > -- http://blog.garytully.com Open Source Integration http://fusesource.com --00c09ffb568eca89af0471152df6--