Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Question] Scalability #34

Closed
abnerjacobsen opened this issue Jul 3, 2018 · 2 comments
Closed

[Question] Scalability #34

abnerjacobsen opened this issue Jul 3, 2018 · 2 comments

Comments

@abnerjacobsen
Copy link

I am interested in using ndscheduler in a solution that I am developing but I have the following requirement:

  1. My app will use the ndscheduler API to generate about 30,000 schedules per day within 2 hours time frame.

  2. These schedules will run only once and their purpose will be to send an attendance confirmation email to a customer.

  3. Schedules will have their execution start date and time distributed over a time period of 6 hours during the day.

  4. After the schedule is successfully executed it can be deleted from the ndscheduler.

Does the ndscheduler support this workload?

Thank you.

@kartick
Copy link

kartick commented Aug 21, 2018

Why don't you use a distributed task queue such as Huey, RQ, or Celery for this? Or you can use a combo of a task queue and NDS (though to me, it seems like an overkill)

@sabw8217
Copy link
Contributor

So I think you could do this, but if you have jobs that will only run once, you probably want a distributed task queue for that. There's not really any reason generating 30K schedules a day wouldn't work, but we certainly haven't tested it.

If you want things to run at certain times, I'd recommend instead having a job that starts up periodically during the day and checks some other distributed queue (e.g. SQS, RabbitMQ) to see what work needs to be done.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants