Dipende da cosa vuoi che facciano i tuoi compiti, se hai bisogno di distribuirli e come vuoi gestirli.
Un crontab è in grado di eseguire uno script ogni N intervalli. Funziona e poi ritorna. Essenzialmente ottieni una singola esecuzione ogni intervallo. Potresti semplicemente indirizzare un crontab per eseguire un comando di gestione django e ottenere l'accesso all'intero ambiente django, quindi il sedano non ti aiuta davvero.
Ciò che il sedano porta in tavola, con l'aiuto di una coda di messaggi, sono le attività distribuite. Molti server possono unirsi al pool di lavoratori e ciascuno riceve un oggetto di lavoro senza timore di una doppia manipolazione. È anche possibile eseguire un'attività non appena è pronta. Con cron, sei limitato a un minimo di un minuto.
Ad esempio, immagina di aver appena lanciato una nuova applicazione web e di ricevere centinaia di iscrizioni che richiedono l'invio di un'e-mail a ciascun utente. L'invio di un'e-mail potrebbe richiedere molto tempo (relativamente), quindi decidi di gestire le e-mail di attivazione tramite attività.
Se stavi usando cron, dovresti assicurarti che ogni minuto cron sia in grado di elaborare tutte le email che devono essere inviate. Se disponi di più server, ora devi assicurarti di non inviare più email di attivazione allo stesso utente: hai bisogno di un qualche tipo di sincronizzazione.
Con il sedano, aggiungi un'attività alla coda. Potresti avere diversi worker per server, quindi hai già scalato prima di un cronjob. Potresti anche avere diversi server che ti consentono di scalare ancora di più. La sincronizzazione viene gestita come parte della "coda".
È possibile utilizzare il sedano come una sostituzione cron, ma che non è proprio il suo utilizzo primario. Viene utilizzato per coltivare attività asincrone in un cluster distribuito.
E, naturalmente, il sedano ha un lungo elenco di funzionalità che cron non ha.