Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update user man #1077

Merged
merged 2 commits into from
Mar 9, 2017
Merged

Update user man #1077

merged 2 commits into from
Mar 9, 2017

Conversation

mtaylor
Copy link
Contributor

@mtaylor mtaylor commented Mar 9, 2017

No description provided.

@mtaylor
Copy link
Contributor Author

mtaylor commented Mar 9, 2017

@clebertsuconic @jbertram Please DO NOT merge, I am opening this for feedback.

**Note:** It is possible to define more than one routing type per address, but this typically results in an anti-pattern and is therefore not recommended. If an address does use both routing types, however, and the client does not show a preference for either one, the broker typically defaults to the anycast routing type.
The one exception is when the client uses the MQTT protocol. In that case, the default routing type is multicast. |

## Background (Protocol Managers and Addresses)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

IMO, this section would be better near the bottom of the document. It gets into the implementation weeds a bit.


### Publish-Subscribe Messaging

In a publish-subscribe scenario, messages are sent to every consumer subscribed to an address. JMS topics and MQTT subscriptions are two examples of publish-subscribe messaging. An example of a publish-subscribe Assign a multicast routing type for an address so that its queues receive messages in a pubish-subscribe manner.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Something was left out of the last sentence in this paragraph, I think.


When a message is received on an address with a multicast routing type, Apache ActiveMQ Artemis will route a copy of the message (in reality only a message reference to reduce the overhead of copying) to each queue.

![Publish Subscribe](images/addressing-model-pubsub.png)
Copy link
Contributor

@jbertram jbertram Mar 9, 2017

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This image refers to "topic.foo" in a couple of places. Personally I would refer to it as "address.foo" like in the other images and just highlight the fact that it's multicast. IMO, importing non-core nomenclature here may be confusing.

```xml
<address name="filter">
<queue name=filter">
<filter string="color='red'"/>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Above it says, "Define an address with a single queue, with no filter applied." However, there is a filter applied here, no?

| Parameter | Description |
---------------------------
| auto-create-addresses | When set to true, the broker will create the address requested by the client if it does not exist already. The default is true.|
| auto-delete-addresses | When set to true, the broker will be delete the address once all of it’s queues have been deleted. The default is true |
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It may be important to note that only auto-created addresses will get auto-deleted.

clebertsuconic added a commit to clebertsuconic/activemq-artemis that referenced this pull request Mar 9, 2017
<core ...>
...
<acceptors>
<acceptor name="artemis">tcp://0.0.0.0:61616?protocols=AMQP&anycastPrefix=anycast://</acceptor>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think maybe the ampersand needs to be escaped.

@mtaylor mtaylor force-pushed the UpdateUserMan branch 4 times, most recently from 2d09589 to c6cc159 Compare March 9, 2017 21:06
<configuration ...>
<core ...>
...
<address name="topic.foo">
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should these be "pubsub.foo" like above rather than "topic.foo"?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

fixed

@mtaylor
Copy link
Contributor Author

mtaylor commented Mar 9, 2017

@clebertsuconic @jbertram This should be good to go. Thanks for the great feedback.

@asfgit asfgit merged commit 24a045e into apache:master Mar 9, 2017
asfgit pushed a commit that referenced this pull request Mar 9, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
3 participants