Hi everyone,
I’ve put together a small, lightweight library called pacchettino. It’s a simple file-based queue system designed for cases where you need to distribute workloads across multiple threads or processes without the overhead of a full-blown message broker.

The API is designed to be very straightforward.

It’s nothing "groundbreaking" but I found myself rewriting this logic too often, so I decided to package it. If you need a quick way to sync tasks between different D processes via the filesystem, give it a try!

Imagine you have a web server (eg: serverino) where users upload files to be processed (like converting a video or parsing a huge CSV). You don't want to make the user wait while your server does the heavy lifting, and you certainly don't want to lose the file if the process is terminated.

With pacchettino, your web server just drops the file into a "queue" folder and immediately tells the user "we're working on it!". Meanwhile, a separate process (not the server) picks up these files one by one and processes them.

Your web server can still "peek" at the queue to tell the user exactly what’s happening whether the file is still waiting, currently being processed.

Zero-dependencies / process and thread safe / crash recovery / persistent.

https://github.com/trikko/pacchettino

Andrea
  • pacchettino Andrea Fontana via Digitalmars-d-announce

Reply via email to