Fast and observable background job processing for .NET

github.com

71 points by mikasjp 3 days ago


fabian2k - 17 hours ago

This seems to be a thin abstraction over Channels, I'd probably prefer to use Channels directly in almost all cases.

I really like Channels for in-memory queues like this, they're very nice and it's easy to make everything parallel. But if you need more than this you usually need persistence, and then you need something else entirely.

rubenvanwyk - 10 hours ago

A front-page HN post about .NET!! Let’s go!! Want more of these.

theryan - 12 hours ago

If you are running a web service, does this provide any advantages to BackgroundService? https://learn.microsoft.com/en-us/aspnet/core/fundamentals/h...

bob1029 - 18 hours ago

I'm trying to find the actual value-add here. This feels like TPL but with more steps.

Why do we need to serialize the jobs through a Channel<T>? Couldn't we just do Task.Run and let the runtime take care of scheduling our work?

mikasjp - 3 days ago

BusyBee is a high-performance .NET background processing library built on native channels. It provides a simple, configurable, and observable solution for handling background tasks with built-in OpenTelemetry support and flexible queue management.

klysm - 7 hours ago

I use Postgres as a queue with SELECT FOR UPDATE SKIP LOCKED. You can easily spin up whatever state around the jobs you want to.

amir734jj - 18 hours ago

How is it different from hangfire?