eNMS
eNMS copied to clipboard
Replace APScheduler with Celery+Redis to decouple execution from the local eNMS
Currently, APScheduler couples the execution of services with the eNMS node, since APScheduler is only capable of managing local executions on a single instance. Celery+Redis would decouple the execution of services and create its own cluster of execution nodes. These would act as a load balanced pool and would be immune to a single node failure. This fixes the issue of what to do with scheduled tasks on a node that has failed.
But Celery has so many issues not resolve. Maybe you can try the Dramatiq(https://github.com/Bogdanp/dramatiq)?