[EnMasse] Topics and subscriptions in Enmasse 0.24.1
Bob Claerhout
bob.claerhout at aloxy.io
Fri Jan 18 14:13:54 UTC 2019
Hi all,
I'm in the dark about the topics and subscriptions in Enmasse.
I'm currently using a standard addressspace in Enmasse 0.24.1 and using the documentation from http://enmasse.io/documentation/0.24.1/openshift/#con-standard-address-space-messaging. Also I'm using qpid-bow as the consumer and publisher (https://github.com/Bynder/qpid-bow).
I'm having two questions:
My first questions is about the wildcards:
The documentation states that:
* a/#/b matches a/foo/b, a/bar/b, and a/foo/bar/b
* a/+/b matches a/foo/b and a/bar/b, but would not match a/foo/bar
I've created a topic address "addressspace/test".
I'm performing my subscriptions using following command: "qb message receive addressspace/test".
I'm performing my publications using following command: "qb message send addressspace/test message".
When I'm subscribing to "addressspace/test" and publishing to "addressspace/test" the subscriber receives the message.
When I'm subscribing to "addressspace/test/foo" and publishing to "addressspace/test/foo" the subscriber receives the message.
However, when I'm subscribing to "addressspace/test/+" and publishing to "addressspace/test/foo" the subscriber does not receive the message although stated by the documentation. When I publish to "addressspace/test/+" it is received by the subscriber.
Also, when I'm subscribing to "addressspace/test/#" and publishing to "addressspace/test/foo" the subscriber does not receive the message although stated by the documentation. When I publish to "addressspace/test/#" it is received by the subscriber.
When I'm subscribing to "addressspace/test.*" and publishing to "addressspace/test.foo" the subscriber also receives the message. I got this from the automated tests.
Can somebody point me towards what I'm doing wrong or did I wrongly interpreted the documentation?
My second question is about the subscription address.
Just verifying my assumptions:
Say I have a topic "test" and I create a subscription, called "foo", on topic "test/foo/+" every message on topic "test/foo/[anything]"(if my assumption in the previous question is correct) should be forwarded and stored in the subscription "foo". When a client connects to "foo", it receives all messages in the queue.
When I have the same topic "test" and I create an additional subscription, called "bar", on topic "test/foo/bar" every message on topic "test/foo/bar" should be forwarded and stored in both subscription "foo" and "bar". When a client connects to "foo", it will receive all messages to "test/foo/+" including the ones to "test/foo/bar". When a client connects to "bar" it will receive all message to "test/foo/bar".
Are my assumptions correct?
Additional sub question:
I'm trying to create a subscription using following yaml template, is this correct?
- kind: Address
apiVersion: enmasse.io/v1alpha1
metadata:
name: foo
spec:
address: foo
topic: test/foo/+
type: topic
plan: standard-small-topic
Can somebody please clarify these things for me and maybe provide working examples?
Thanks!
Bob Claerhout
--
[cid:part1.38951037.C7A83628 at aloxy.io] Bob Claerhout
Software developer
M +32 479 34 84 92
The Beacon, Sint-Pietersvliet 7, 2000
Antwerp
bob.claerhout at aloxy.io<mailto:bob.claerhout at aloxy.io> | www.aloxy.io<http://www.aloxy.io>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listman.redhat.com/archives/enmasse/attachments/20190118/48348186/attachment.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: hjgfipjlmcehaiam.png
Type: image/png
Size: 6330 bytes
Desc: hjgfipjlmcehaiam.png
URL: <http://listman.redhat.com/archives/enmasse/attachments/20190118/48348186/attachment.png>
More information about the enmasse
mailing list