Skip to content

Conversation

@bchav
Copy link
Contributor

@bchav bchav commented Oct 23, 2025

  • Adds detail about Poller Autoscaler feature, recommends use, provides SDK snippets

  • Please check my formatting on the SDKtab example, not sure how this will build out :)

@bchav bchav requested a review from a team as a code owner October 23, 2025 15:01
@vercel
Copy link

vercel bot commented Oct 23, 2025

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Preview Comments Updated (UTC)
temporal-documentation Ready Ready Preview Comment Oct 24, 2025 7:24pm

@CLAassistant
Copy link

CLAassistant commented Oct 23, 2025

CLA assistant check
All committers have signed the CLA.

@github-actions
Copy link
Contributor

github-actions bot commented Oct 23, 2025

📖 Docs PR preview links

Copy link
Member

@Sushisource Sushisource left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Awesome! Looking good, just a couple small suggestions


Task Pollers enable efficient load balancing across multiple Worker processes.
The number of Task Pollers can be configured using `WorkerOptions` when creating a new Worker instance.
Temporal SDKs implement support for *Automated Poller Tuning*, which dynamically adjusts the number of pollers in use to maximize throughput for a given number of workers and the size of the task backlog.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's call this Poller Autoscaling to match the behavior names in the code

Task Pollers enable efficient load balancing across multiple Worker processes.
The number of Task Pollers can be configured using `WorkerOptions` when creating a new Worker instance.
Temporal SDKs implement support for *Automated Poller Tuning*, which dynamically adjusts the number of pollers in use to maximize throughput for a given number of workers and the size of the task backlog.
Temporal recommends using Automated Poller Tuning for the majority of use cases, as manually setting this value too high or too low for your workload will result in decreased performance.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Temporal recommends using Automated Poller Tuning for the majority of use cases, as manually setting this value too high or too low for your workload will result in decreased performance.
Temporal recommends using Automated Poller Tuning for the majority of use cases, as manually setting the number of pollers too high or too low for your workload will result in decreased performance.

GO SDK: https://pkg.go.dev/go.temporal.io/sdk/worker#PollerBehaviorAutoscalingOptions
```go
w := worker.New(c, "my-task-queue", worker.Options{

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can get rid of the extra empty lines between assignments in all these

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done.

Pollers create long-polling connections to the Temporal Service, allowing the service to dispatch Tasks to Workers.
When a Task Poller receives a Task, it delivers to the appropriate Executor Slot for processing.
A Worker's **Task Pollers** play a crucial role in the Temporal architecture by efficiently ingesting work to Workers to support scalable, resilient Workflow Execution.
Pollers create long-polling connections to the Temporal Service and actively poll a Task Queue for Tasks to process. When a Task Poller receives a Task, it delivers to the appropriate Executor Slot for processing.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Pollers create long-polling connections to the Temporal Service and actively poll a Task Queue for Tasks to process. When a Task Poller receives a Task, it delivers to the appropriate Executor Slot for processing.
Pollers create long-polling connections to the Temporal Service and actively poll a Task Queue for Tasks to process. When a Task Poller receives a Task, it delivers the Task to the appropriate Executor Slot for processing.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good catch.

@bchav bchav changed the title Updates Poller Autoscaler Conent Updates Poller Autoscaler Content Oct 23, 2025
Adds sdktabs import statements that will (hopefully) fix the broken build
Attempt to fix markdown-fu
Copy link
Contributor

@flippedcoder flippedcoder left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Everything looks good! Just some general docs clean up and tweaks.

Pollers create long-polling connections to the Temporal Service, allowing the service to dispatch Tasks to Workers.
When a Task Poller receives a Task, it delivers to the appropriate Executor Slot for processing.
A Worker's **Task Pollers** play a crucial role in the Temporal architecture by efficiently ingesting work to Workers to support scalable, resilient Workflow Execution.
Pollers create long-polling connections to the Temporal Service and actively poll a Task Queue for Tasks to process. When a Task Poller receives a Task, it delivers to the appropriate Executor Slot for processing.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Pollers create long-polling connections to the Temporal Service and actively poll a Task Queue for Tasks to process. When a Task Poller receives a Task, it delivers to the appropriate Executor Slot for processing.
Pollers create long-polling connections to the Temporal Service and actively poll a Task Queue for Tasks to process. When a Task Poller receives a Task, it delivers to the appropriate Executor Slot for processing.

Copy link
Contributor Author

@bchav bchav left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, thanks.

@flippedcoder flippedcoder merged commit bc54e86 into main Oct 24, 2025
5 checks passed
@flippedcoder flippedcoder deleted the bchav-poller-autoscaler branch October 24, 2025 19:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants