Popularity
6.6
Stable
Activity
0.0
Stable
17
5
2

Monthly Downloads: 18
Programming language: Haskell
License: BSD 3-clause "New" or "Revised" License
Tags: Web     Hasql    

hasql-queue alternatives and similar packages

Based on the "hasql" category.
Alternatively, view hasql-queue alternatives based on common mentions on social networks and blogs.

Do you think we are missing an alternative of hasql-queue or a related project?

Add another 'hasql' Package

README

Travis CI Status

hasql-queue

This module utilizes PostgreSQL to implement a durable queue for efficently processing payloads.

Typically a producer would enqueue a new payload as part of larger database transaction

createAccount userRecord = transaction Serializable Write $ do
  createUser userRecord
  enqueue "queue_channel" emailEncoder [makeVerificationEmail userRecord]

In another thread or process the consumer would drain the queue.

  -- Wait for a single new record and try to send the email 5 times for giving
  -- up and marking the payload as failed.
  forever $ withDequeue "queue_channel" conn emailDecoder 5 1 $
    mapM_ sendEmail