Uploaded image for project: 'ActiveMQ Classic'
  1. ActiveMQ Classic
  2. AMQ-4607

network connectors - new messageTTL and consumerTTL - split usage of networkTTL for mesh topology

    XMLWordPrintableJSON

Details

    Description

      currently networkTTL in a networkConnector (default=1) means that a message can go one hop and demand (or info about a consumer) can go one hop.
      In a network (A<>B) messages and consumers can flow.

      In a linear network (A<>B<>C) networkTTL needs to be 2 for messages and consumers to flow two hops from A to C.

      In a mesh topology, (A<>B<>C<A>) a networkTTL=1 for consumers makes sense because there is at most one hop. However for messages, networkTTL > 1 is necessary if consumers need to hop around between brokers. Imagine a consumer on A which pulls messages to A from B, then the consumer moves to C, messages now need to hop again from A to C. This can repeat, essentially messageTTL(networkTTL) needs to be infinite.

      With consumerTTL > 1 in a mesh, managing demand for proxy (demand) consumers and proxy proxy consumers becomes very difficult.

      Attachments

        Issue Links

          Activity

            People

              gtully Gary Tully
              gtully Gary Tully
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: