{
  "id": 8669534,
  "title": "Cronflower: run a DAG workflow across your cluster, instead of chaining cron jobs",
  "url": "https://urgent.news/2026/09/20/cronflower-run-a-dag-workflow-across-your-cluster-instead-of-chaining",
  "topic": "tech",
  "section": "Tech",
  "published": "2026-09-20T10:43:11.000Z",
  "source": {
    "name": "Dev.to",
    "slug": "dev-to",
    "url": "https://dev.to/paganini2008/stop-chaining-cron-jobs-run-a-dag-workflow-across-your-cluster-1ibi"
  },
  "original_language": "en",
  "account": "Cronflower is an open-source distributed scheduler for Spring Boot that lets you run a Directed Acyclic Graph (DAG) workflow across your cluster instead of chaining cron jobs. Traditional cron jobs lack real dependencies, shared data, and the ability to determine if subsequent steps ran because the previous ones succeeded. Cronflower addresses these limitations with its cronsmith and cronflow components.\n\nCronsmith is the distributed scheduler, while cronflow is the DAG orchestrator. By declaring the steps and their dependencies as a graph, you can run the graph on the same cluster, with data flowing between nodes. Each step is a Spring bean, with each method representing a step. Nodes pass data to each other through channels, with reducers merging concurrent writes into a single value.\n\nWith cronflower, you can create conditional routing using SpEL expressions, allowing nodes to choose their next step based on the data. This enables complex workflows without shared mutable state or ordering assumptions, resulting in a more efficient and reliable workflow management system.",
  "summary": "Every team ends up here. One cron job at 02:00 charges the orders. Another at 02:15 ships them, set fifteen minutes later because that's usually long enough for the first one to finish. There's no real dependency between them, no shared data, and no way to see, after the fact, whether step two ran because step one actually succeeded or just because the clock moved. That's the wall plain cron…",
  "key_points": [],
  "editors_take": null,
  "illustration": null,
  "coverage": {
    "outlets": 2,
    "also_reported_by": [
      {
        "outlet": "Dev.to",
        "title": "Cronflower: turn a Spring Boot app into a distributed cron cluster",
        "url": "https://urgent.news/2026/09/20/cronflower-turn-a-spring-boot-app-into-a-distributed-cron-cluster",
        "published": "2026-09-20T10:37:27.000Z"
      }
    ]
  },
  "ai_generated": true,
  "disclaimer": "Summaries, key points and the editor’s take are written by software from other outlets’ reporting and may contain errors — always check the linked original."
}