Return-Path: Delivered-To: apmail-activemq-users-archive@www.apache.org Received: (qmail 41484 invoked from network); 29 Jul 2010 17:08:23 -0000 Received: from unknown (HELO mail.apache.org) (140.211.11.3) by 140.211.11.9 with SMTP; 29 Jul 2010 17:08:23 -0000 Received: (qmail 10368 invoked by uid 500); 29 Jul 2010 17:08:22 -0000 Delivered-To: apmail-activemq-users-archive@activemq.apache.org Received: (qmail 10311 invoked by uid 500); 29 Jul 2010 17:08:22 -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 10289 invoked by uid 99); 29 Jul 2010 17:08:22 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 29 Jul 2010 17:08:22 +0000 X-ASF-Spam-Status: No, hits=0.0 required=10.0 tests=FREEMAIL_FROM,SPF_HELO_PASS,SPF_PASS,T_TO_NO_BRKTS_FREEMAIL X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: domain of lists@nabble.com designates 216.139.236.158 as permitted sender) Received: from [216.139.236.158] (HELO kuber.nabble.com) (216.139.236.158) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 29 Jul 2010 17:08:16 +0000 Received: from isper.nabble.com ([192.168.236.156]) by kuber.nabble.com with esmtp (Exim 4.63) (envelope-from ) id 1OeWaK-0007mw-AA for users@activemq.apache.org; Thu, 29 Jul 2010 10:07:56 -0700 Message-ID: <29298648.post@talk.nabble.com> Date: Thu, 29 Jul 2010 10:07:56 -0700 (PDT) From: Jeff Wartes To: users@activemq.apache.org Subject: Re: Coping with forgetful subscribers In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Nabble-From: jwartes@whitepages.com References: I have, and agree that this would be an excellent way to maintain a sliding window of message history. However, when it comes time to use that history, you don't want to consume the messages in such a way that they aren't available again. Otherwise, if you have two bouts of amnesia before the message "history" has refilled enough to cover, you might fail to replay certain messages. (You could solve this by having multiple history queues, of course, but that seems... inelegant.) I hadn't thought about playing with message acks though. I had assumed that if you fail to acknowledge receipt of a message, you won't get the next one. The thought would be that the subscriber would just never acknowledge messages, so that whenever it reconnects, it gets a full replay? Gary Tully wrote: > > Have a read of http://activemq.apache.org/virtual-destinations.html > I can imagine a variant of a filtered destination that sets an message > expiry duration such that it maintains a time limited mirror of a > queue. Then a composite destination that also pulls from the mirror. > If you implement your own destination interceptor you can have > complete control of where messages end up w.r.t to destinations. > > I also wonder about ack modes, could the amnesia include forgetting to > ack or commit, that seems easier as all of the received but un acked > messages will still be available for redelivery once the consumer > disconnects. > -- View this message in context: http://old.nabble.com/Coping-with-forgetful-subscribers-tp29292239p29298648.html Sent from the ActiveMQ - User mailing list archive at Nabble.com.