Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id 9FB4D200D30 for ; Mon, 30 Oct 2017 10:42:39 +0100 (CET) Received: by cust-asf.ponee.io (Postfix) id 9E31E160BE4; Mon, 30 Oct 2017 09:42:39 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id BE99F1609EF for ; Mon, 30 Oct 2017 10:42:38 +0100 (CET) Received: (qmail 35894 invoked by uid 500); 30 Oct 2017 09:42:37 -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 35883 invoked by uid 99); 30 Oct 2017 09:42:37 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd2-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 30 Oct 2017 09:42:37 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd2-us-west.apache.org (ASF Mail Server at spamd2-us-west.apache.org) with ESMTP id A53951A25F1 for ; Mon, 30 Oct 2017 09:42:36 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd2-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: -0.301 X-Spam-Level: X-Spam-Status: No, score=-0.301 tagged_above=-999 required=6.31 tests=[HTML_MESSAGE=2, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-2.8, RCVD_IN_SORBS_SPAM=0.5, SPF_PASS=-0.001] autolearn=disabled Received: from mx1-lw-us.apache.org ([10.40.0.8]) by localhost (spamd2-us-west.apache.org [10.40.0.9]) (amavisd-new, port 10024) with ESMTP id YSaFKIVvM1ny for ; Mon, 30 Oct 2017 09:42:33 +0000 (UTC) Received: from mail-qk0-f172.google.com (mail-qk0-f172.google.com [209.85.220.172]) by mx1-lw-us.apache.org (ASF Mail Server at mx1-lw-us.apache.org) with ESMTPS id 3BB6E5F121 for ; Mon, 30 Oct 2017 09:42:33 +0000 (UTC) Received: by mail-qk0-f172.google.com with SMTP id b15so15277509qkg.9 for ; Mon, 30 Oct 2017 02:42:33 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to; bh=KEAjEArOHu3Bw1rYkfIHyGIYaRCB6KvRtmIswdtFUfI=; b=rO7/3fgPcPQ6IkAqC4Pydag0DnF7KNaE3vyHbTTo+fOFsE/0QSgdlsRBT9AuanaRLr qbOBUSSsm5MTyLNHVccfzpIzHWFy6JMze5yPO06JTqt89YkF928EcBqnGkDBqKSeSHGl V3JZHKEokkmKuAqCvILmyX7MmWt3evvMyi3NIAMDDZz+ekXZf+r43jelnn5C7cg6qtG8 3Vr2afpDeq2Eyklwi5/+ydTB1nu2sdedr4W5iOaUKPRsBdqoST6vDzX9NIna4/8NylwB hqLM192C2npShaOKgS6x+gHrqctDTCeQIOlmpmkGCXIjAW6qz2hYlvY/YXPiqFjIMuif 35cw== X-Gm-Message-State: AMCzsaU0BBoI2wUFES2XwbhF2OiP+PW0s06RWX0/c9G+ow4tgOcXCIhs ggvqbnrI4eBFt6bw3heaWs9Msr1l4DAJhe4+dCcsk2nj X-Google-Smtp-Source: ABhQp+TxgdyJAFUhTyv9PlNK1Y6KMq8+F7m23yWS/l/YbfLsqIazEtrZkiRbIOtXslw7qSgLxn8oKJd3eHTobnPMVYM= X-Received: by 10.233.216.6 with SMTP id u6mr11701497qkf.357.1509356546981; Mon, 30 Oct 2017 02:42:26 -0700 (PDT) MIME-Version: 1.0 Received: by 10.12.151.153 with HTTP; Mon, 30 Oct 2017 02:42:26 -0700 (PDT) In-Reply-To: References: From: Martyn Taylor Date: Mon, 30 Oct 2017 09:42:26 +0000 Message-ID: Subject: Re: [Artemis] - Can last value queue be sent to multiple consumers? To: users@activemq.apache.org Content-Type: multipart/alternative; boundary="94eb2c043bb2d297fc055cc07408" archived-at: Mon, 30 Oct 2017 09:42:39 -0000 --94eb2c043bb2d297fc055cc07408 Content-Type: text/plain; charset="UTF-8" Hi Lionel, If I understand your use case correctly, then MQTT has a feature that does exactly what you're trying to achieve. Retained messages. "When a workstation connects, I want it to be able to get the most recent value immediately." A producer can mark a message as "retain". The broker keeps hold of this message. When a new subscriber arrives the broker sends this message first. Each address can have at any one time a single retain message. "I then want them all to be receiving updates as they happen" Subsequent messages sent to the subscription address are then forward to the new subscriber as usual. On Sun, Oct 29, 2017 at 8:44 PM, Justin Bertram wrote: > > Can the multicast work for a client who is connecting for the first time? > > I'm not entirely clear on your question here. Are you talking about using > UDP multicast for server discovery or using a multicast address and/or > queue? > > > > Will they immediately get the last value? > > In a last-value queue the only message for a given value which is stored is > the "last" one received so that will be the one which a client gets when it > connects and begins consuming messages. > > > Justin > > On Sun, Oct 29, 2017 at 5:01 AM, Lionel van den Berg > wrote: > > > One more question, I've read the documentation several times and plan to > > implement soon and test some scenarios. Can the multicast work for a > client > > who is connecting for the first time? Will they immediately get the last > > value? > > > > On 13 August 2017 at 09:10, Justin Bertram wrote: > > > > > A multicast address is something you configure on the ActiveMQ Artemis > > > broker. See more details in the documentation [1]. > > > > > > > > > Justin > > > > > > [1] http://activemq.apache.org/artemis/docs/latest/address-model.html > > > > > > On Sat, Aug 12, 2017 at 5:36 PM, Lionel van den Berg < > lionelv@gmail.com> > > > wrote: > > > > > > > I can be flexible on the protocol. Currently we are using openwire. > > > > > > > > For the option of a multicast address, is this an activemq > > configuration > > > or > > > > network configuration? OK, it's in activemq and there is some > > > > documentation, I'll get to ready. At first glance it seems there are > > some > > > > limitations, but it looks worth my time to understand how it would > > work. > > > > > > > > > > > > On 13 August 2017 at 07:05, Justin Bertram > > wrote: > > > > > > > > > What client protocol/API are you going to be using? > > > > > > > > > > I think you could accomplish what you're after by using a multicast > > > > address > > > > > with multiple last-value queues which represent all your > > workstations. > > > > How > > > > > you access those will depend on what protocol/API you decide to > use. > > > > > > > > > > > > > > > Justin > > > > > > > > > > On Fri, Aug 11, 2017 at 5:13 AM, Lionel van den Berg < > > > lionelv@gmail.com> > > > > > wrote: > > > > > > > > > > > Hi, > > > > > > > > > > > > I'm currently using activemq and now looking into Artemis. One of > > the > > > > > > interest features I see is the is the last-value queue option. > > > However > > > > > what > > > > > > I want to use it for is for regularly updating data and not so > > > regular > > > > > > updating data where the last value is always the only interesting > > > > value, > > > > > > but where that data is interesting to multiple consumers. > > > > > > > > > > > > A bit more on my design thought in case I've missed another > better > > > > > > solution. I have many workstations that connect, disconnect and > > > change > > > > > user > > > > > > role. They all use a sub-set of the same data that I want to > > publish > > > to > > > > > > dedicated queues (last value) or topics. When a workstation > > > connects, I > > > > > > want it to be able to get the most recent value immediately. I > then > > > > want > > > > > > them all to be receiving updates as they happen. I can solve it > > > through > > > > > > triggering a publish in the software when a new workstation > > connects, > > > > but > > > > > > if the messaging system can help me then that is better. > > > > > > > > > > > > Thanks > > > > > > > > > > > > Lionel. > > > > > > > > > > > > > > > > > > > > > --94eb2c043bb2d297fc055cc07408--