How goqite works: Core Concepts
maingoqite is a persistent message queue library that uses a single database table to manage messages.
Key concepts include:
- Persistence: Messages are stored in a database (SQLite or PostgreSQL).
- Visibility Timeout: When a message is received, it is marked as received and becomes unavailable to other consumers until a timeout occurs. This prevents redelivery during active processing.
- Timeout Extension: You can extend the visibility timeout for long-running tasks to prevent the message from being redelivered while still being processed.
- Multiple Queues: You can manage multiple logical queues within a single database table by specifying a
Nameduring initialization. - Job Runner: A higher-level abstraction built on top of the queue to automate background task execution.