The channel's in-memory message queue is a temporary cache that holds onto messages for up to 20 minutes and is limited to 100 messages (the most recent 100 messages). But if messages are published at a fast rate, then messages can be pushed off the queue and not be available prior to 20 minutes period.
For long term, reliable persistence and retrieval of missed message, you should enable Message Persistence, and use the history
API to retrieve those messages.