what's the recommended concurrency limit per work...
# ask-community
k
what's the recommended concurrency limit per work queue and per work pool when using the default task runner?
n
hi @kasteph - I'd say there's no one size fits all answer for concurrency, instead I think its very much a function of your runtime infrastructure and workflow details (e.g. are you hitting an API with some concurrent connection limits etc)
if you could provide some more details on your workflow, perhaps I could offer a general recommendation
k
@Nate thanks! I'm running the agent on a single compute instance with Docker. The agent starts two queues on the default work pool. I've set the default work pool concurrency limit to 20 with no limits on the work queue. However, I do have a Flow that creates many subflows (> 50) and these subflows are assigned to its own queue. The queue immediately becomes "unhealthy".
Is queue health determined by
num of current runs / num of upcoming runs
?
n
ah - if this is what I think it is, this is something we're thinking about changing down the road. I suspect that the flow runs that are submitted after your 20 concurrency slots are already filled are being marked as LATE while waiting for the slots to free, and then work queues are marked unhealthy because of the LATE flow runs
is your work pool concurrency of 20 a hard limit?
k
@Nate no not really but I found that having more than ~30 concurrent runs breaks my agent
n
@kasteph what do you mean by "breaks my agent" in this case? I would anticipate your work queue becomes unhealthy as your runs exceed the concurrency limit and then pile up as LATE
k
@Nate CPU and mem usage reaches 100% even though I have an instance with 4 vCPUs and 16 GB Memory.
180 Views