Design a Distributed Task Scheduler - High-level design | OneNoughtOne