You don’t even need a database to implement an effective queueing mechanism.
Linux file move is atomic, which means file system based queues are perfectly viable. Just save one message per file. Move the file to a different directory when it changes state.
I built a prototype queue around this mechanism. Performance was bound to the disks ability to create small files, around 30,000 messages per second.
This sort of performance rivals some of much more sophisticated and complex queuing systems, but has zero configuration.