Live data from Hacker News

Show HN: Lightweight Task queue on Erlang/OTP, SQLite-backed, no overengineering

github.com

11–20 of 24 posts

Re: Show HN: Lightweight Task queue on Erlang/OTP, SQLite-backed, no overengineering

#13
Maybe this says more about me than your project, but I find the use of implementing this with the Redis Streams wire protocol very interesting and creative. Being able to leverage the surface area of existing client SDKs should really help adoption and reduce what you have to maintain in order to widely integrate.

I agree that in many areas there often is not much in-between "roll yourself in-memory" and "enterprise grade maxed out scalability focus".

Re: Show HN: Lightweight Task queue on Erlang/OTP, SQLite-backed, no overengineering

#14
Using the Redis Streams wire protocol means any existing Redis client works without changes. The queue is stored on disk, so tasks survive a restart. No new client library to add. One question: if a worker stops in the middle of a task, does the message go back to the queue for another worker?

Re: Show HN: Lightweight Task queue on Erlang/OTP, SQLite-backed, no overengineering

#16
post #9

> This project is maintained by a single author and pull requests are not accepted Save yourself the headache of people not reading this and just disable pull requests in the repo settings

that's a smart point. Just did it, thanks!

Re: Show HN: Lightweight Task queue on Erlang/OTP, SQLite-backed, no overengineering

#17

Using the Redis Streams wire protocol means any existing Redis client works without changes. The queue is stored on disk, so tasks survive a restart. No new client library to add. One question: if a worker stops in the middle of a task, does the message go back to the queue for another worker?

[dead]

Re: Show HN: Lightweight Task queue on Erlang/OTP, SQLite-backed, no overengineering

#18

Congrats on the launch. Using the Redis protocol was a pretty clever choice. Does it have to run as a stand-alone server?

Thanks, really glad you liked the idea to use redis protocol!

as an answer: tare actually two ways to run it. As a standalone binary, it's one process you run(you can easily run it via docker too) on its own(which speaks on Redis protocol over TCP) - and any language connects to it like a Redis server.

Or, if you're on Elixir, you can skip the separate process entirely and add it directly to your app's supervision tree - it runs inside your own app's process, no network hop, just function calls.

Re: Show HN: Lightweight Task queue on Erlang/OTP, SQLite-backed, no overengineering

#20
post #3

Oban is really awesome, are you inspired by it?

Maybe kinda shameful, but have to admit I just heard about Oban from you - and it seems an amazing thing. thanks for mentioning it!

Re inspiration: no direct inspiration really, just needed this tool myself for my own projects. But I guess this project as my engineering taste was kind of influenced/validated by bright minds like Richard Hipp, Joe Armstrong, and Derek Sivers

Post reply on HN