Zależy to od tego, co chcesz, aby wykonywały Twoje zadania, czy chcesz je rozprowadzać i jak chcesz nimi zarządzać.
Crontab jest w stanie wykonać skrypt co N interwałów. Działa, a następnie wraca. Zasadniczo otrzymujesz jedno wykonanie w każdym interwale. Możesz po prostu nakazać crontabowi wykonanie polecenia zarządzania django i uzyskanie dostępu do całego środowiska django, więc seler nie pomaga w tym.
To, co seler wnosi do stołu, za pomocą kolejki wiadomości, to zadania rozproszone. Wiele serwerów może dołączyć do puli pracowników i każdy może otrzymać element pracy bez obawy o podwójną obsługę. Możliwe jest również wykonanie zadania, gdy tylko będzie gotowe. W przypadku crona jesteś ograniczony do minimum jednej minuty.
Na przykład wyobraź sobie, że właśnie uruchomiłeś nową aplikację internetową i otrzymujesz setki rejestracji, które wymagają wysłania wiadomości e-mail do każdego użytkownika. Wysyłanie e-maila może zająć dużo czasu (względnie), więc decydujesz, że będziesz obsługiwać e-maile aktywacyjne za pośrednictwem zadań.
Gdybyś używał crona, musiałbyś upewnić się, że cron jest w stanie przetworzyć wszystkie e-maile, które mają być wysłane, co minutę. Jeśli masz kilka serwerów, musisz teraz upewnić się, że nie wysyłasz wielu e-maili aktywacyjnych do tego samego użytkownika - potrzebujesz jakiejś synchronizacji.
Z selerem dodajesz zadanie do kolejki. Możesz mieć kilku pracowników na serwer, więc przeskalowałeś już przed cronjob. Możesz także mieć kilka serwerów, co pozwala na jeszcze większe skalowanie. Synchronizacja jest obsługiwana jako część „kolejki”.
Państwo może używać jako zamiennik seler cron, ale to naprawdę nie jest jego podstawowym zastosowaniem. Służy do wyszukiwania zadań asynchronicznych w rozproszonym klastrze.
I oczywiście seler ma dużą listę funkcji , których nie ma w programie cron.