Ruby Que implementation in Go. This library is almost a fork of que-go, the great work of bgentry.
First of all, Que, and it's Go port que-go are really great libraries, which can simplify small to mid scale application with some sort of asynchronous tasks/jobs by avoiding to add another moving part if you are already using PostgreSQL as main RDBMS. However, as I use que-go
to develop my application written in Go, there are some functionalities that que-go
doesn't provide. The following is an list of functionalities I'm going to add to qg
.
database/sql
compatible version of enqueue functions so that many other database libraries can work with it.- Transaction can be injected to a
Job
to makeWorkFunc
tests much easier. - Customizable
Job.Delete()
,Job.Error()
to give more flexibility. - Synchronous execution option in
Client.Enqueue
andClient.EnqueueInTx
for easy development. - Better logger interface to be able to switch whatever loggers developers want.
This library is still under heavy development, and might significantly change APIs.
docker compose up -d
make db
make table
make test