Return-Path: X-Original-To: apmail-qpid-users-archive@www.apache.org Delivered-To: apmail-qpid-users-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id EF87BEDB1 for ; Sun, 10 Mar 2013 09:52:15 +0000 (UTC) Received: (qmail 35269 invoked by uid 500); 10 Mar 2013 09:52:15 -0000 Delivered-To: apmail-qpid-users-archive@qpid.apache.org Received: (qmail 35055 invoked by uid 500); 10 Mar 2013 09:52:14 -0000 Mailing-List: contact users-help@qpid.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: users@qpid.apache.org Delivered-To: mailing list users@qpid.apache.org Received: (qmail 35009 invoked by uid 99); 10 Mar 2013 09:52:12 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 10 Mar 2013 09:52:12 +0000 X-ASF-Spam-Status: No, hits=-0.7 required=5.0 tests=RCVD_IN_DNSWL_LOW,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of rob.j.godfrey@gmail.com designates 209.85.214.172 as permitted sender) Received: from [209.85.214.172] (HELO mail-ob0-f172.google.com) (209.85.214.172) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 10 Mar 2013 09:52:08 +0000 Received: by mail-ob0-f172.google.com with SMTP id tb18so2493522obb.17 for ; Sun, 10 Mar 2013 01:51:47 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:x-received:in-reply-to:references:date:message-id :subject:from:to:content-type; bh=obSIJ8kIIKx3a7mSRgb4C8yjmMal+aarAbaCL/GwHJg=; b=G/4i+DDtAx1iTEI1Kc9kGp4gn4YWPOMa71kbIhuWqawsJOcZ9ZyaxzUtXujvO+j/YQ aSt59BPRBlU4hN6y2dD0dt38OS+Tf5iKyPAV+X/hsxzFLXmfZWtDIEP3dh5KU8V0OG5+ 5L86fdTVDqUpkxQfuZWxin3a1rhuNNIRv09NNPCqfjX8+fCW5etzdeZbgy07nevPTqSD TNZYe6UOUxtztAgLhIWAsOodkkLB5kwwWw2CTg1J4nmtu+xK+tw/vQAV3FgVv0oDsLRD CcCy9SBLQq9GZ8w+98X7dWgB+yStmVz1/lXTE+qERlzbrAynt3s7K43zkHL9vN8UbQ6f LImw== MIME-Version: 1.0 X-Received: by 10.60.1.34 with SMTP id 2mr5942304oej.47.1362909107548; Sun, 10 Mar 2013 01:51:47 -0800 (PST) Received: by 10.60.22.194 with HTTP; Sun, 10 Mar 2013 01:51:47 -0800 (PST) In-Reply-To: <513C4759.30907@blueyonder.co.uk> References: <513B4EB7.6070007@blueyonder.co.uk> <513B6391.6040105@blueyonder.co.uk> <513C4759.30907@blueyonder.co.uk> Date: Sun, 10 Mar 2013 10:51:47 +0100 Message-ID: Subject: Re: Java broker exchange questions From: Rob Godfrey To: users@qpid.apache.org Content-Type: text/plain; charset=ISO-8859-1 X-Virus-Checked: Checked by ClamAV on apache.org On 10 March 2013 09:42, Fraser Adams wrote: > >> Yeah - from an AMQP 1.0 point of view one might consider Queues and >> Exchanges both as types of "Nodes" (the 1.0 transport for the Java >> Broker actually allows you to publish directly to Queues and subscribe >> to Exchanges)... how to present this and the 0.x view as a single >> coherent model will be "interesting" (are bindings links from >> exchanges to queues I wonder) > > As per previous post I'm *really* interested in this going forward as I > suspect are many people. Publishing to a queue seems fairly "normal" given > that the default direct exchange provided a mechanism to use a producer > address that just looked like a queue, but subscribing to an exchange seems > weirder. In the latter case clearly a topic address made it look like this > was happening, but a temporary queue was always put in place *actually* > subscribing to exchanges seems more unusual as one would normally expect > some sort of "elastic" buffering to decouple producers and consumers. I > guess that with Qpid there's the concept of prefetching messages so I guess > that this gives the necessary buffering (unless synchronous behaviour has > been specified). > > I'd really like to understand more about how this is currently working in > AMQP 1.0/Proton do you have some example Addresses that are being used - I'm > particularly interested in how an existing AddressString containing a > headers exchange and bindings to that might work. So, what the Java Broker does under the covers is actually to create a temporary subscription queue. One could actually implement subscriptions to exchanges such that published messages are not acknowledged until they have been flowed to all recipients... but that would have been a bigger piece of work. Ultimately I want to just add "topic" nodes rather than abusing exchanges for this purpose (I had a 10 line patch that did this that is probably still sitting around somewhere). The primary implementation difference is that messages at the head of a "topic" get silently dropped if there are no subscriptions that have not yet passed that message. > >> >> -- Rob (going seriously off-topic) >> >> > Perhaps, but it's probably a good topic to start, the AMQP 1.0 work has been > quietly going on in dev land and I think this is probably a good time to > start sharing the love a bit on the user list. > +1. We definitely need to talk more about AMQP 1.0 on this list as well as better explaining what things are AMQP 1.0 and what things are "Qpid". -- Rob > > Frase > > > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: users-unsubscribe@qpid.apache.org > For additional commands, e-mail: users-help@qpid.apache.org > --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscribe@qpid.apache.org For additional commands, e-mail: users-help@qpid.apache.org