I just completed the beginner tutorial and I do not understand the difference between the publisher-subscriber (PS) way of passing messages and the server-client (SC) way of passing messages. To me they seem like two ways of doing the same thing.
If I understand correctly, with the PS method there is a queue. P pushes messages in the queue and S listens for messages coming from the queue.
In SC, there is no queue, instead C waits for S to make some sort of action and then executes.
What is the practical difference between the two ways?
In what situation should I use one and not the other?
Originally posted by gabi on ROS Answers with karma: 76 on 2018-07-25
Post score: 1
Original comments
Comment by gvdhoorn on 2018-07-25:
Almost a duplicate: #q237672.
Comment by gabi on 2018-07-26:
ok thanks, but it doesn't answer any of my questions
Comment by gvdhoorn on 2018-07-26:
The paper that is linked in #q237672 may be a bit academic, but it actually answers all your questions.
If you're happy with the explanation you received from your friend though, we're happy.
Know that there is a bit more to pub-sub vs client-server than you write in your answer below.
Comment by gabi on 2018-07-26:
True, maybe it does and yes I did not read it. I guess I expected a tl;dr helpful answer instead of 'go read this 18 page paper'
Comment by gvdhoorn on 2018-07-26:
The answer you posted below is perfectly fine for a "tl;dr" helpful answer.
I only referred you to the paper in case you wanted more insight into the differences. I don't believe "go read this 18 page paper" was said to you anywhere.
Also: the differences are explained in sections 2 and 3, ..
Comment by gvdhoorn on 2018-07-26:
.. which are 4 pages of A4 text at most.