Documentation ¶
Index ¶
Constants ¶
View Source
const (
SlowStartInitialBatchSize = 1
)
Variables ¶
This section is empty.
Functions ¶
func SlowStartBatch ¶
func SlowStartBatch(count int, initialBatchSize int, shortCircuit bool, fn func(int, error) error) (int, error)
SlowStartBatch tries to call the provided function a total of 'count' times, starting slow to check for errors, then speeding up if calls succeed.
It groups the calls into batches, starting with a group of initialBatchSize. Within each batch, it may call the function multiple times concurrently.
If a whole batch succeeds, the next batch may get exponentially larger. If there are any failures in a batch, all remaining batches are skipped after waiting for the current batch to complete.
It returns the number of successful calls to the function.
Types ¶
This section is empty.
Click to show internal directories.
Click to hide internal directories.