We are making a new design for a system that will receive a lot of files during the day, and on the night, they will be processed.
But while i am thinking about it, i face some questions:
1) What should I do about the Cron Application?
a) A console application that when it runs, it retrieves all the files and executes them (setting this app for running every day)? Or..
b) a console application that uses Quartz.NET or some scheduler like this one and leaving it always running so everyday it executes the cron job?
2) How can i do if i want to run the cron just for 3 hours for example?
We will have a high volume of files to process, so, it is possible that it takes a lot to process them. And i don't want the cron application to be running on working hours because the companies will be using the website a lot for sending files, and the database might not be able to resist that. I would like the cron application to run for example from 3am to 6am. How can accomplish that?
3) How can i do for disabling the website when the cron application is running?
I mean, for showing something like an html webpage that says: "We are processing the files right now, try again at 6am"
I would really appreciate any experience, any advice, any article for reading something related, etc.