Temporal in ML oriented processes


I’ve got a task to design a quite specific pipeline. Which most probably can be implemented on service orchestration pattern on top of Temporal.
Imagine 3 microservices deployed in K8S. Every service can have multiple pods. One service processing some long running ~30 secs ML task. And specific is that this ML task is fully utilize the microservice instance. So simply service can process one task per unit of time.
In Temporal I think this task should be modeled as Activity. Can we rate limit Activity processing as one task per once service instance? May be we can limit executing thread pool for Activity type?

Set WorkerOptions.MaxConcurrentActivityExecutionSize to 1 to avoid running more than one activity at a time by a worker.

1 Like

Great! Thanks Maxim!