Umbraco Automate in a load balanced env

I have a no of custom scheduled tasks that have traditionally run via custom controller actions, triggered via a cron job in Azure. These tasks typically import and create content using data from external systems. I’m converting them into custom actions within Umbraco Automate as this seems a more logical place to run them. Question - am I correct in assuming any configured automations run on all instances in a load balanced env, therefore it’s down to my custom action code to ensure the tasks only run on the publisher?

Hi @Gavin5656

According to this:

Automate handles it itself. Scheduled triggers run on the SchedulingPublisher node, and everything else runs on any node but goes via a shared outbox table with optimistic concurrency, so you get exactly-once consumption across the cluster. No duplicate runs and no need for your own IServerRoleAccessor guard.

Researched with the help of AI.

Justin

Hey @Gavin5656!

@justin-nevitech is correct, this was an important part of how we built Automate and it is documented in the source, but not anywhere else.

This information will be reflected in the official Docs once this PR is approved.

Thanks @rickbutterfield!