I see most of the consumer examples create a while/for loop and then fetch messages iteratively. Is that the only way by which clients can consumer messages? If this is the preferred way then how do you deal with failures, exceptions such that messages are not lost.
Also, please point me to examples that one would consider as a robust way of coding consumers.