Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions v2/charts/azure-service-operator/values.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -241,16 +241,16 @@ tolerations: []
affinity: {}

# MaxConcurrentReconciles is the number of threads/goroutines dedicated to reconciling each resource type.
# If not specified, the default is 1.
# If not specified, the default is 4.
# IMPORTANT: Having MaxConcurrentReconciles set to N does not mean that ASO is limited to N interactions with
# Azure at any given time, because the control loop yields to another resource while it is not actively issuing HTTP
# calls to Azure. Any single resource only blocks the control-loop for its resource-type for as long as it takes to issue
# an HTTP call to Azure, view the result, and make a decision. In most cases the time taken to perform these actions
# (and thus how long the loop is blocked and preventing other resources from being acted upon) is a few hundred
# milliseconds to at most a second or two. In a typical 60s period, many hundreds or even thousands of resources
Copy link
Member

Choose a reason for hiding this comment

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

Do we need to scale back this comment? For some resources it's certainly true, but (as we've recently learned), not for all.

Suggested change
# milliseconds to at most a second or two. In a typical 60s period, many hundreds or even thousands of resources
# milliseconds to at most a second or two. In a typical 60s period, many hundreds of resources

# can be managed with this set to 1.
# for a given resource type can be managed with this set to 1.
# MaxConcurrentReconciles applies to every registered resource type being watched/managed by ASO.
maxConcurrentReconciles: 1
maxConcurrentReconciles: 4

rateLimit:
# mode configures the internal rate-limiting mode.
Expand Down
6 changes: 3 additions & 3 deletions v2/internal/config/vars.go
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ import (
"github.com/Azure/azure-service-operator/v2/pkg/common/config"
)

var DefaultMaxConcurrentReconciles = 1
var DefaultMaxConcurrentReconciles = 4

// NOTE: Changes to documentation or available values here should be documented in Helm values.yaml as well

Expand Down Expand Up @@ -89,14 +89,14 @@ type Values struct {
UserAgentSuffix string

// MaxConcurrentReconciles is the number of threads/goroutines dedicated to reconciling each resource type.
// If not specified, the default is 1.
// If not specified, the default is 4.
// IMPORTANT: Having MaxConcurrentReconciles set to N does not mean that ASO is limited to N interactions with
// Azure at any given time, because the control loop yields to another resource while it is not actively issuing HTTP
// calls to Azure. Any single resource only blocks the control-loop for its resource-type for as long as it takes to issue
// an HTTP call to Azure, view the result, and make a decision. In most cases the time taken to perform these actions
// (and thus how long the loop is blocked and preventing other resources from being acted upon) is a few hundred
// milliseconds to at most a second or two. In a typical 60s period, many hundreds or even thousands of resources
// can be managed with this set to 1.
// for a given resource type can be managed with this set to 1.
// MaxConcurrentReconciles applies to every registered resource type being watched/managed by ASO.
MaxConcurrentReconciles int

Expand Down
4 changes: 2 additions & 2 deletions v2/pkg/common/config/config.go
Original file line number Diff line number Diff line change
Expand Up @@ -67,14 +67,14 @@ const (
// UserAgentSuffix is appended to the default User-Agent for Azure HTTP clients.
UserAgentSuffix = "AZURE_USER_AGENT_SUFFIX"
// MaxConcurrentReconciles is the number of threads/goroutines dedicated to reconciling each resource type.
// If not specified, the default is 1.
// If not specified, the default is 4.
// IMPORTANT: Having MaxConcurrentReconciles set to N does not mean that ASO is limited to N interactions with
// Azure at any given time, because the control loop yields to another resource while it is not actively issuing HTTP
// calls to Azure. Any single resource only blocks the control-loop for its resource-type for as long as it takes to issue
// an HTTP call to Azure, view the result, and make a decision. In most cases the time taken to perform these actions
// (and thus how long the loop is blocked and preventing other resources from being acted upon) is a few hundred
// milliseconds to at most a second or two. In a typical 60s period, many hundreds or even thousands of resources
// can be managed with this set to 1.
// for a given resource type can be managed with this set to 1.
// MaxConcurrentReconciles applies to every registered resource type being watched/managed by ASO.
MaxConcurrentReconciles = "MAX_CONCURRENT_RECONCILES"
// RateLimitMode configures the internal rate-limiting mode.
Expand Down
Loading