Client was connected and registered on desired topics. When it comes online again it gets all pending messages for him.
I checked with mosquito broker, and it seems that all pending messages are sending at once, and broker waits for each ack. Is it a rule?
Does Broker have to send them at once, or is it possible to send one by one, waiting for ack before sending next packet. Maybe this is just a mosquito implementation, but I can see problem that application will work in a different way with different broker.
I tried to find anything in this matter, but couldn't find any mqtt rule that describes it.
I'm struggling with a scenario, when in the answer for publish, client sends directly to the broker some data. If all messages that are pending, are being sent immediately from the broker, there is no way this approach will work, because we won't get puback from the broker ( I mean we will, maybe, but data which comes from the socket contains next publish messages ). And in the meantime, since we're not processing queue fast enough, broker will send part of messages again, since qos1 it used for them.
So guys, did you have to face this issue in the past? Do you have some information about this case?