package
0.0.0-20240307055817-780ac92f6253
Repository: https://github.com/as-tool/as-etl-engine.git
Documentation: pkg.go.dev
# Functions
NewAsyncTaskScheduler: Create an asynchronous task scheduler using the context ctx, the number of parallel workers numWorker, and the task channel size chanSize.
NewExponentialRetryStrategy: Create an exponential backoff retry strategy based on a retry judge.
NewForeverRetryStrategy: Create a permanent retry strategy based on a retry judge and retry interval.
NewNoneRetryStrategy: Create a strategy with no retries.
NewNTimesRetryStrategy: Create a retry strategy with a fixed number of attempts.
NewResourceMap: Create a resource mapping.
NewRetryStrategy: Generate a retry strategy based on the configuration file.
NewRetryTask generates retry task based on context relationship ctx.
NewTaskManager create task manager.
NewTaskScheduler - Creates a new task scheduler based on the number of workers (workerNumber) and the capacity of the pending task queue (capacity).
# Variables
ErrorClosed - Represents an error indicating that the operation is closed.
# Structs
AsyncTaskScheduler: Asynchronous task scheduler.
ExponentialRetryConfig: Exponential backoff retry strategy.
ExponentialStrategy: Exponential backoff retry strategy.
ForeverRetryConfig: Permanent retry strategy.
ForeverRetryStrategy: Permanent retry strategy with no maximum attempt limit.
MappedTaskManager task manager toto I don't know why len(remain) + len(run) can't accurately represent the number of real-time tasks, mainly because len(run) is not accurate.
NoneRetryStrategy: No retry strategy.
NTimesRetryConfig: Retry strategy with a fixed number of attempts.
NTimesRetryStrategy: Retry strategy with a fixed number of attempts.
ResourceMap: Resource mapping.
RetryTask retry task.
TaskScheduler - Represents a task scheduler.
# Interfaces
AsyncTask (Asynchronous Task).
MappedResource: Mappable resource.
MappedTask.
Resource: Resource.
RetryJudger: Retry decision-maker.
RetryStrategy: Retry strategy interface or base class.
Task.