Rocketry

Dev tools

task scheduler library

SHOW HN2022

168points
67comments
#359of 2,570 in 2022
Top 14%of 2022 by points

How HN took it

CuriousMostly questions and neutral comments

6 positive, 23 neutral or asking, 1 mixed, 2 critical, out of 32 comments about the project. Thread score +0.08.

Idea: 2 for, 1 againstDesign: 2 for, 0 againstExecution: 2 for, 0 againstDocs: 0 for, 1 against

The thread, comment by comment

Each row is a top-level comment and its replies, in HN's order. Select a cell to open that comment on HN.

positive neutral or mixed critical about another commenter or something else the maker

What HN said

What people liked

  • Clean, pythonic API and light configuration

    From 2 comments
    • Anyone using this? It's not spelled out, but it's apparent you just run the python file containing the app definition and leave it running in the background? Looks very clean and…
      bckr on HN
    • This looks brilliant. I like that it’s kept light as a concept - feels like you can just sprinkle it over your existing tasks without getting bogged down in complex…
      aidos on HN
  • Native async and choice of execution mode (async, thread, process)

    From 2 comments
    • Biggest win I see here is the native support for async methods. Celery, the default option for most, does not support it and there are only hacky ways to make async work. Kudos…
      realyashnag on HN
    • Being able to configure simply the execution (async, process, thread) is pure gold, I am tempted to use it for this alone.
      reedf1 on HN

Objections

  • Requires a Python process to keep running, less efficient than cron

    From 2 comments
    • I don't really use schedulers for work and have never really worked with them. So this may sound trivial but do i have to keep a terminal open and the script running for this to…
      chirau on HN
    • Putting it mildly, this is nothing more than a sophisticated Python while loop. And it's not as performance friendly as Cron due to that Rocketry runs on Python. You need to be…
      Miksus on HN
  • No built-in missed-task handling yet

    From 1 comment
    • I wrote my own ideas of how it compares to APScheduler (and other alternatives) here:…
      Miksus on HN

Requests

  • Multiple time zone support

    From 1 comment
    • Does this support multiple time zones simultaneously? We have clients that are in different time zones, and (for example) they all want weekly summary emails every Monday morning…
      smaccona on HN
  • Monitoring UI showing run history

    From 1 comment
    • if it provides monitoring ui (e.g. success/failure status for last N runs), then i'd seriously give it a try.
      qkhhly on HN
  • API accessible from other languages

    From 1 comment
    • I like the idea, but this should be an api that can be accessed from any language.
      dwils098 on HN

Questions

  • How task state persists across restarts

    From 2 comments
    • Hey cool project, congrats! How does Rocketry saves execution state? Like, if it crashes and goes back up again, does it know which tasks were executed and which ones were not?
      pid-1 on HN
    • Does it keep track of the status of each task? Imagine I run an app with three processes A, B, C. A runs perfectly, but B fails and halts the app. If I start the app again, is it…
      alexmolas on HN
  • How it compares to APScheduler

    From 1 comment
    • Interesting. How does this compare to APScheduler? How does it deal with concurrently scheduled tasks and the possibility of missed tasks?
      jwmoz on HN
  • Which backends are supported

    From 1 comment
    • What backends do you support? Do I need Redis or it can work with PostgreSQL? Cant find this info in readme.
      pplonski86 on HN

Alternatives named

  • APScheduler

    From 2 comments
    • Interesting. How does this compare to APScheduler? How does it deal with concurrently scheduled tasks and the possibility of missed tasks?
      jwmoz on HN
    • I quickly went through the docs but didn't see a reference to be able to dynamically schedule and unschedule tasks at runtime. I've used APScheduler in the past and it does…
      nickjj on HN
  • Celery

    From 2 comments
    • Biggest win I see here is the native support for async methods. Celery, the default option for most, does not support it and there are only hacky ways to make async work. Kudos…
      realyashnag on HN
    • Celery supports solar scheduling, though it's not obvious how you would do +/- some time from the solar event. You would probably need to extend their implementation, but I don't…
      powvans on HN
  • Airflow

    From 2 comments
    • Add some logging and connectors and you have an airflow replacement with the pipelining or am I missing something?
      gigatexal on HN
    • Putting it mildly, this is nothing more than a sophisticated Python while loop. And it's not as performance friendly as Cron due to that Rocketry runs on Python. You need to be…
      Miksus on HN
  • Prefect

    From 1 comment
  • cron and systemd timers

    From 1 comment
    • ... or make CLI version of your tasks and let the system mangement daemon ("cron" or in my case systemd timers) handle it. For clarity make a subfolder called "tasks" or…
      svennek on HN

Category, keywords, summaries and labels on this page were made by AI (Thread Reader v2) and not checked by hand. Each point links to the comments it came from.

Add a badge to your READMEShown on HackerShow
[![Shown on HackerShow](https://hackershow.org/badge.svg)](https://hackershow.org/show/32935506)