Cronos
A fully-featured .NET library for working with Cron expressions. Built with time zones in mind and intuitively handles daylight saving time transitions (by HangfireIO)
DurableTask
Durable Task Framework allows users to write long running persistent workflows in C# using the async/await capabilities. (by Azure)
Cronos | DurableTask | |
---|---|---|
4 | 9 | |
944 | 1,444 | |
2.8% | 1.6% | |
8.6 | 7.8 | |
2 months ago | 3 days ago | |
C# | C# | |
MIT License | Apache License 2.0 |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Cronos
Posts with mentions or reviews of Cronos.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2022-05-04.
-
ASP.NET: CRON Service Worker
HangfireIO/Cronos: Fully-featured .NET library for working with Cron expressions. Built with time zones in mind and intuitively handles daylight saving time transitions (github.com)
- Cron for .NET 5.0+
-
Weekly email reminders - what is the best way to do them in .NET?
We do this sort of thing with an IHostedService in our application that uses a cron expression (using https://github.com/HangfireIO/Cronos) to control when to process the task
-
CRON Format Converter
You could use this: https://github.com/HangfireIO/Cronos
DurableTask
Posts with mentions or reviews of DurableTask.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-11-22.
-
Show HN: Windmill β fastest open-source workflow engine β the how
Might want to checkout DurableTasks[1] for that
[1] https://github.com/Azure/durabletask
- Temporal .NET β Deterministic Workflow Authoring in .NET
-
.NET Modern Task Scheduler
Azure Durable Tasks are great for this. Itβs open source too: https://github.com/Azure/durabletask
-
Dabbling with Dagster vs. Airflow
AWS Simple Workflows or Azure Logic Apps are both services that let you define S2S workflows however you like without any particular bias to CI/CD or business operations.
If you want to go even lower level, a framework like DTFx lets you define long-running, distributed and resilient orchestrations in code:
https://github.com/Azure/durabletask
-
Resetting your Durable Functions Task Hub state
The fast and less official way to clean up state is to use the underlying Durable Task Framework storage APIs directly. Durable Functions has an internal dependency on the Durable Task Framework, so no new packages need to be added to your app to access them. Here's an example function that demonstrates how to clean up Azure Storage state quickly (disclaimer: use any of my code samples at your own risk).
-
How to use Netherite Storage Provider in Durable Functions
Netherite is a distributed workflow execution engine for Durable Functions (DF) and the Durable Task Framework (DTFx).
-
What was your stupidest mistake? (As a C# dev)
To give context - this table would track long running operations that were initiated and being executed by our worker machines (we use this c sharp framework).
-
Azure Durable Functions - Developing Serverless Stateful Workflow
Behind the scenes, the Durable Functions extension is built on top of the Durable Task Framework, an open-source library on GitHub that's used to build workflows in code. Like Azure Functions is the serverless evolution of Azure WebJobs, Durable Functions is the serverless evolution of the Durable Task Framework. Microsoft and other organizations use the Durable Task Framework extensively to automate mission-critical processes. It's a natural fit for the serverless Azure Functions environment.
-
A 10+ year Journey
I could clearly see that the developers building applications on Microsoft Azure were facing eerily similar challenges to what I had seen back at AWS. The same challenges we had tried to address with SWF. So I used one of the internal team hackathons as an opportunity to pair up with Affan Dar and take another stab at solving the problem. Affan had a very deep understanding of Azure ServiceBus so he was the perfect person to build the backend for the stateful C# experience I had in mind. Microsoft had recently added async/await capabilities into C# and it turned out to be an amazing fit for writing stateful applications which need to orchestrate calls among microservices. Since Java lacked an async/await like primitive, we had to rely on Promise-based async approach when building SWF. But with C#, we were able to deliver a much cleaner and synchronous programming model using async/await. This hackathon project resulted in Azure Durable Task Framework as an OSS client SDK which uses Azure ServiceBus as the backend to provide a stateful workflow-as-code experience for applications. I'm so glad to see Microsoft has continued investing in the experience with Azure Durable Functions as the latest reincarnation of the original effort. An effort which started with that hackathon project.
What are some alternatives?
When comparing Cronos and DurableTask you can also consider the following projects:
NCrontab - Crontab for .NET
Workflow Core - Lightweight workflow engine for .NET Standard
QuartzNet - Quartz Enterprise Scheduler .NET
FluentScheduler - Automated job scheduler with fluent interface for the .NET platform.
.NET application-server - Application Server
temporal - Temporal service
Chroniton - A library for running tasks(jobs) on schedules.
AsyncAwaitBestPractices - Extensions for System.Threading.Tasks.Task and System.Threading.Tasks.ValueTask
Cronos vs NCrontab
DurableTask vs Workflow Core
Cronos vs QuartzNet
DurableTask vs QuartzNet
Cronos vs FluentScheduler
DurableTask vs FluentScheduler
Cronos vs .NET application-server
DurableTask vs temporal
Cronos vs Workflow Core
DurableTask vs Chroniton
Cronos vs AsyncAwaitBestPractices
DurableTask vs NCrontab