Skip to content

RFC: Cloud Support for Scheduler #2673

Description

@mitchelsellers

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?

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions