Queue Question RRS feed

  • Question

  • Hi, 

    We are trying out Azure Scheduler and trying to decide if it is the right solution to replace our current one. Currently we have a table in our SQL Server that houses tasks/jobs that need to run. We have our own application that runs on our server that decides which task runs next.

    1) One of our use cases is that for a particular type of job there may be ten submitted but only three can run at a time. Once one is done, another can take its place. I see that we can limit the number of jobs in a collection, but it appears that I can't set that job collection to only run the first N jobs submitted. Is this at all possible?

    2) Some of our jobs run for very long times (multiple days). We handle this by having a "Processing" state for a job. This way when the service is called to start the task, it doesn't just wait for completion. It gets put into processing and then the task service will then flip it to completed. The job states that I'm seeing in the documentation are Disabled, Enabled, Completed & Faulted. Am I missing something that designates that one is currently processing? We don't want the Azure Job to wait for a response for days to know that it's complete. We are looking for a way to have the Azure Job request the start of a job, get an immediate response essentially saying that it's been received and then we can then update the job accordingly. 

    Does this type of functionality seem achievable with Azure Scheduler? Are there any samples available that demonstrate this type of approach?

    Thank you in advance.

    Tuesday, April 3, 2018 4:59 PM

All replies

  • Hi Kevin,

    This is Derek, program manager for Scheduler and Logic Apps.

    Based on what you described, I recommend you check out Azure Logic Apps. Logic Apps' feature is a superset of Scheduler's, but it also has some nice features you can benefit from, such as:

    • Logic Apps support conditions (if-else, switch-case) and other more advanced flow controls, the decision making step that you currently have as a standalone application may be replaced by Logic Apps, so you don't have to manage the infrastructures for the server.
    • It also has throughput/parallel controls, so you can control how many "runs" may happen at the same time.
    • Logic Apps also support Webhook and other ways in which you can implement async patterns, such as trigger a downstream workload, provide a callback Url, and have the downstream work call back into Logic Apps once the processing is done to continue additional logic.
    • Logic Apps comes out of box with more than 200 different services it can talk to directly, SQL is one of them. So it makes the integration even easier.

    Please give Logic Apps a try, I think it will fit your scenario nicely. If you have any questions, feel free to reach out directly to me at Derek.Li (a) microsoft dot com.=



    • Edited by Femisulu-MSFT Wednesday, April 4, 2018 8:51 AM typo
    • Proposed as answer by Femisulu-MSFT Wednesday, April 4, 2018 8:51 AM
    Wednesday, April 4, 2018 2:45 AM