Documentation
¶
Overview ¶
Package goque provides a distributed task queue manager with support for multiple processors and automatic task healing and cleaning.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Goque ¶
type Goque struct {
// contains filtered or unexported fields
}
Goque is the main task queue manager that coordinates multiple task processors.
func NewGoque ¶
func NewGoque(taskStorage TaskStorage) *Goque
NewGoque creates a new Goque instance with the specified task storage.
func (*Goque) RegisterProcessor ¶
func (g *Goque) RegisterProcessor( processorType string, taskProcessor queueprocessor.TaskProcessor, opts ...queueprocessor.GoqueProcessorOpts, )
RegisterProcessor registers a new task processor for a specific task type. Should be call before Run.
type TaskStorage ¶
type TaskStorage interface {
queueprocessor.TaskStorage
internalprocessors.CleanerTaskStorage
internalprocessors.HealerTaskStorage
}
TaskStorage combines all storage interfaces required by Goque for task processing, cleaning, and healing operations.
Directories
¶
| Path | Synopsis |
|---|---|
|
internal
|
|
|
entity
Package entity contains domain entities for the task queue system.
|
Package entity contains domain entities for the task queue system. |
|
pkg/generated/mocks/mock_processors/queueprocessor
Package mock_queueprocessor is a generated GoMock package.
|
Package mock_queueprocessor is a generated GoMock package. |
|
processors/internalprocessors
Package internalprocessors provides internal task processors for queue management including cleaning and healing operations.
|
Package internalprocessors provides internal task processors for queue management including cleaning and healing operations. |
|
processors/queueprocessor
Package queueprocessor provides task queue processing functionality with configurable workers and retry logic.
|
Package queueprocessor provides task queue processing functionality with configurable workers and retry logic. |
|
queuemngr
Package queuemngr provides queue management functionality for adding tasks to storage.
|
Package queuemngr provides queue management functionality for adding tasks to storage. |
|
storages/sql/pg/task
Package task provides storage operations for task management in the queue system.
|
Package task provides storage operations for task management in the queue system. |
|
storages/sql/pg/utils
Package sqlpgutils provides database utility functions and helpers.
|
Package sqlpgutils provides database utility functions and helpers. |
|
storages/sql/utils
Package sqldbutils provides database utilities for transaction management and common database operations.
|
Package sqldbutils provides database utilities for transaction management and common database operations. |
|
utils/xtime
Package xtime provides time-related utility functions.
|
Package xtime provides time-related utility functions. |
|
pkg
|
|
|
utils/sqldb
Package sqldb provides utilities for establishing and managing SQL database connections.
|
Package sqldb provides utilities for establishing and managing SQL database connections. |
|
scripts
|
|
|
dbmodels
command
|
Click to show internal directories.
Click to hide internal directories.