Configuring timing for external task client

Hi,

Can someone please explain what is asyncResponseTimeout , and backoffStrategy to configure external task client.

I want my external task client to fetch tasks and finish them then itself , and if there are no tasks found, wait for 30 seconds and then do the fetch again. If again there are not tasks found, suspend for 2 minutes and fetch again.

So, how can this be configured?

Thanks,
Sindhu .

1 Like

Refer the docs for external task: External Tasks | docs.camunda.org

For External Task client: External Task Client | docs.camunda.org

Example implementation:

https://github.com/camunda/camunda-external-task-client-java/tree/master/examples

Configure the topic name with external task type for service task like below.

1 Like

thank you.

Hi @sindhu_veladi,

asyncResonseTimeout is the interval, where the server waits for a new tasks and delivers the response immediatly to the client. This setting decrease time laps between task creation and fetch-and-lock, if the server is idle. It’s called LongPolling.

I understand your question

as a usecase for backoffStrategy. The DefaultBackoffStrategy doubles the wait time for each request, maximum 60 seconds. You can create a new BackoffStrategy to fit your needs.

For example: .backoffStrategy(new ExponentialBackoffStrategy(30000, 2, 120000))

Hope this helps, Ingo

4 Likes