Description of Problem
Currently, the DNN Scheduler system runs in-process within a DNN installation and has a configuration option for "Run on Server(s)". In cloud environments, such as Azure App Service, with auto-scale situations, it is not possible to configure a scheduled job to only execute on a single server.
This is an issue when jobs interact with the database or otherwise, that should only be working with a single instance. (DB Maintenance, email distribution, etc.)
A simple method for "Run once" or similar is needed
Proposed Solution Option 1
The existing Scheduler Interface should be updated to have a new optional setting for "Run Once Per Schedule". Or a similar name. This setting should then prevent the application from running the job more than once at the same time.
Implementation of this solution is a bit unclear and would need research. However, this solution would/should be platform agnostic
Proposed Solution Option 2
Another solution would be to implement an environment specific (Azure or otherwise) solution that leverages technologies that exist in the environment.
This isn't preferred as it would be a single solution for an environment.
Affected version
All Version
Requested Feedback
Does anyone have other ideas of options, or methods that we could utilize?
Description of Problem
Currently, the DNN Scheduler system runs in-process within a DNN installation and has a configuration option for "Run on Server(s)". In cloud environments, such as Azure App Service, with auto-scale situations, it is not possible to configure a scheduled job to only execute on a single server.
This is an issue when jobs interact with the database or otherwise, that should only be working with a single instance. (DB Maintenance, email distribution, etc.)
A simple method for "Run once" or similar is needed
Proposed Solution Option 1
The existing Scheduler Interface should be updated to have a new optional setting for "Run Once Per Schedule". Or a similar name. This setting should then prevent the application from running the job more than once at the same time.
Implementation of this solution is a bit unclear and would need research. However, this solution would/should be platform agnostic
Proposed Solution Option 2
Another solution would be to implement an environment specific (Azure or otherwise) solution that leverages technologies that exist in the environment.
This isn't preferred as it would be a single solution for an environment.
Affected version
All Version
Requested Feedback
Does anyone have other ideas of options, or methods that we could utilize?