Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

High-performance single server worker implementation using EF Core transactional outbox pattern and SemaphoreSlim #2316

Open
zejji opened this issue Nov 4, 2023 · 0 comments

Comments

@zejji
Copy link

zejji commented Nov 4, 2023

When running Hangfire on a single server, there are currently two things which I would love to see:

  • when using EF Core, I don't believe there is any way to implement the transactional outbox pattern with Hangfire so that jobs are only queued if other changes made to a DbContext are successfully saved; and
  • short-polling or long-polling on a database storage are very inefficient, so it would be helpful to have a single-server implementation which uses a Semaphore to communicate to the worker when a job is ready to pick up.

Is there any possibility to implement this? If so, where would one start?

Also, I note that there was a highly-upvoted issue regarding an async method for EnqueueJob. Is this likely to happen at any point in the near future?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

No branches or pull requests

1 participant