Hi, I'm new to ZeroMQ and over the last few months have been working to integrate it into our software. We've landed on using Malamute, but the documentation for it is a little lacking and have had to look into the source code for some things.

Two things I am confused about are tracker strings and service requests.

1. How are service requests different from just being filtered direct messages? You still have to specify the address, subject, and content (optionally tracker and timeout), just like the mailbox pattern.

example:

Mailbox: mlm_client_sendto(client, address, subject, tracker, timeout, zmsg);

Service: mlm_client_sendfor(client, address, subject, tracker, timeout, zmsg);

For both, the receiver calls mlm_client_recv(client) the same way. I don't see how the mailbox pattern is different from the service pattern, other than the receiver having the ability to filter by subject using regex.

2. What are tracker strings for? I see in the proto.bnf that if it is specified, the sender is waiting for a confirm. How is that sent? Through a mlm_client_sendto? Or is that done automatically? Is this something I even have control over as the user?

example:

sender: mlm_client_sendto(client, "sender", "subject", "track12345", 0, zmsg_obj);

receiver: mlm_client_recv(client);

--Does the receiver have to then send a confirmation reply? Is this done via mlm_client_sendto()? And how does the sender subsequently get the confirmation reply?


Thanks ahead of time, the entire ZMQ system is really awesome and inspiring! Fun to use and much cleaner than our current messaging system.

Kevin

_______________________________________________
zeromq-dev mailing list
zeromq-dev@lists.zeromq.org
https://lists.zeromq.org/mailman/listinfo/zeromq-dev

Reply via email to