Documentation
¶
Index ¶
- Variables
- func AQHandle(mux *asynq.ServeMux, pattern string, handler asynq.Handler)
- func AQHandleFunc(mux *asynq.ServeMux, pattern string, handler asynq.HandlerFunc)
- func EnqueueGq(task string, payload interface{}, opt ...GQueueTaskOpt)
- func LoadRedisClientOpt() asynq.RedisClientOpt
- func NewAQClient(c ...asynq.RedisClientOpt) *asynq.Client
- func NewAQServer(c ...asynq.Config) *asynq.Server
- func NewAQServerMux(hm AQHandlerMap) *asynq.ServeMux
- func NewAQTask(typ string, data interface{}, opts ...asynq.Option) *asynq.Task
- func Pattern(typ string) string
- func SetAppName(name string)
- func StartGQServer(hMap GQHandlerMap)
- func WrapAQHandler(fn any) asynq.HandlerFunc
- type AQHandlerMap
- type GQHandlerMap
- type GQueue
- type GQueueArray
- func (q *GQueueArray) Clear()
- func (q *GQueueArray) Dequeue() (value interface{}, ok bool)
- func (q *GQueueArray) Empty() bool
- func (q *GQueueArray) Enqueue(value interface{})
- func (q *GQueueArray) Peek() (value interface{}, ok bool)
- func (q *GQueueArray) Size() int
- func (q *GQueueArray) String() string
- func (q *GQueueArray) Values() []interface{}
- type GQueueHandler
- type GQueueOption
- type GQueueTask
- type GQueueTaskOpt
- func WithGQueueTaskGroup(group int) GQueueTaskOpt
- func WithGQueueTaskID(id string) GQueueTaskOpt
- func WithGQueueTaskMaxRetry(maxRetry int) GQueueTaskOpt
- func WithGQueueTaskRetryDelayFunc(retryDelayFunc func(retried int) time.Duration) GQueueTaskOpt
- func WithGQueueTaskRunAt(runAt time.Time) GQueueTaskOpt
- type Job
Constants ¶
This section is empty.
Variables ¶
View Source
var ( DefaultAQServerConfigFunc = func() asynq.Config { return asynq.Config{ Concurrency: runtime.NumCPU(), Queues: map[string]int{ "critical": 6, "default": 3, "low": 1, }, Logger: util.ZapLogger("asynq"), LogLevel: asynq.WarnLevel, DelayedTaskCheckInterval: time.Second * 1, } } )
View Source
var ( DefaultGQOptionFunc = func() GQueueOption { return GQueueOption{ MaxConcurrent: runtime.NumCPU(), MaxRetry: defaultQueueMaxRetry, Logger: util.ZapLogger("queue"), Groups: map[int]int{1: 6, 2: 3, 3: 1}, BatchSize: defaultBatchSize, } } )
Functions ¶
func AQHandleFunc ¶
func AQHandleFunc(mux *asynq.ServeMux, pattern string, handler asynq.HandlerFunc)
func EnqueueGq ¶
func EnqueueGq(task string, payload interface{}, opt ...GQueueTaskOpt)
EnqueueGq 将任务加入全局队列
func LoadRedisClientOpt ¶
func LoadRedisClientOpt() asynq.RedisClientOpt
func NewAQClient ¶
func NewAQClient(c ...asynq.RedisClientOpt) *asynq.Client
func NewAQServerMux ¶
func NewAQServerMux(hm AQHandlerMap) *asynq.ServeMux
func WrapAQHandler ¶
func WrapAQHandler(fn any) asynq.HandlerFunc
Types ¶
type AQHandlerMap ¶
type AQHandlerMap map[string]asynq.HandlerFunc
type GQHandlerMap ¶
type GQHandlerMap map[string]GQueueHandler
type GQueue ¶
type GQueue struct {
// contains filtered or unexported fields
}
func NewGQueue ¶
func NewGQueue(opt1 GQueueOption) *GQueue
func (*GQueue) Enqueue ¶
func (g *GQueue) Enqueue(task GQueueTask)
func (*GQueue) Register ¶
func (g *GQueue) Register(task string, handler GQueueHandler)
func (*GQueue) StartServer ¶
func (g *GQueue) StartServer()
type GQueueArray ¶
func NewGQueueArray ¶
func NewGQueueArray() *GQueueArray
func (*GQueueArray) Clear ¶
func (q *GQueueArray) Clear()
func (*GQueueArray) Dequeue ¶
func (q *GQueueArray) Dequeue() (value interface{}, ok bool)
func (*GQueueArray) Empty ¶
func (q *GQueueArray) Empty() bool
func (*GQueueArray) Enqueue ¶
func (q *GQueueArray) Enqueue(value interface{})
func (*GQueueArray) Peek ¶
func (q *GQueueArray) Peek() (value interface{}, ok bool)
func (*GQueueArray) Size ¶
func (q *GQueueArray) Size() int
func (*GQueueArray) String ¶
func (q *GQueueArray) String() string
func (*GQueueArray) Values ¶
func (q *GQueueArray) Values() []interface{}
type GQueueHandler ¶
type GQueueHandler func(task *GQueueTask) (err error)
type GQueueOption ¶
type GQueueTask ¶
type GQueueTask struct {
ID string `json:"id"`
Name string `json:"name"`
Data []byte `json:"data"`
Retried int `json:"retried"`
Group int `json:"group"`
CreatedAt time.Time `json:"created_at"`
MaxRetry int `json:"max_retry"` // -1 使用全局
RetryDelayFunc func(retried int) time.Duration `json:"-"`
RunAt time.Time `json:"run_at"`
}
func NewGQTask ¶
func NewGQTask(task string, payload interface{}, opt ...GQueueTaskOpt) GQueueTask
func NewGQueueTaskBytes ¶
func NewGQueueTaskBytes(name string, data []byte, opt ...GQueueTaskOpt) GQueueTask
func (GQueueTask) Copy ¶
func (t GQueueTask) Copy() *GQueueTask
func (GQueueTask) String ¶
func (t GQueueTask) String() string
type GQueueTaskOpt ¶
type GQueueTaskOpt func(task *GQueueTask)
func WithGQueueTaskGroup ¶
func WithGQueueTaskGroup(group int) GQueueTaskOpt
func WithGQueueTaskID ¶
func WithGQueueTaskID(id string) GQueueTaskOpt
func WithGQueueTaskMaxRetry ¶
func WithGQueueTaskMaxRetry(maxRetry int) GQueueTaskOpt
func WithGQueueTaskRetryDelayFunc ¶
func WithGQueueTaskRetryDelayFunc(retryDelayFunc func(retried int) time.Duration) GQueueTaskOpt
func WithGQueueTaskRunAt ¶
func WithGQueueTaskRunAt(runAt time.Time) GQueueTaskOpt
Click to show internal directories.
Click to hide internal directories.