I wish all these libraries agreed on a common schema >_<
I really like the look of this approach, but don't want to build it myself if I can avoid it.
We had an internal library that used advisory locks which had all sorts of strange behavior we couldn't figure out until we just moved to SKIP LOCKED
https://github.com/malthe/pq - postgres queue based on rq and ruby queue_classic
https://github.com/coleifer/huey - sqlite, redis and in memory by coleifer (peewee creator). Possible to implement postgres storage layer simply.
https://github.com/closeio/tasktiger - flexible redis-based python task queue alternative to celery
https://dramatiq.io/ - actor based python job queue on redis/rabbitMQ
https://github.com/GoogleCloudPlatform/psq - gcp pub/sub based task queue
https://github.com/celery/celery/blob/master/celery/backends...