为asynq历史任务在redis中添加生命周期,过期时间为订单过期时间

This commit is contained in:
dev
2026-01-27 12:18:32 +08:00
parent 14435ba426
commit 9def1ec447
9 changed files with 55 additions and 18 deletions
+4 -1
View File
@@ -3,6 +3,7 @@ package handle
import (
"context"
"errors"
"github.com/assimon/luuu/config"
"github.com/assimon/luuu/model/data"
"github.com/assimon/luuu/model/mdb"
@@ -21,7 +22,9 @@ func NewOrderCallbackQueue(order *mdb.Orders) (*asynq.Task, error) {
if err != nil {
return nil, err
}
return asynq.NewTask(QueueOrderCallback, payload), nil
return asynq.NewTask(QueueOrderCallback, payload,
asynq.Retention(config.GetOrderExpirationTimeDuration()),
), nil
}
func OrderCallbackHandle(ctx context.Context, t *asynq.Task) error {
+5 -1
View File
@@ -2,6 +2,8 @@ package handle
import (
"context"
"github.com/assimon/luuu/config"
"github.com/assimon/luuu/model/data"
"github.com/assimon/luuu/model/mdb"
"github.com/hibiken/asynq"
@@ -10,7 +12,9 @@ import (
const QueueOrderExpiration = "order:expiration"
func NewOrderExpirationQueue(tradeId string) (*asynq.Task, error) {
return asynq.NewTask(QueueOrderExpiration, []byte(tradeId)), nil
return asynq.NewTask(QueueOrderExpiration, []byte(tradeId),
asynq.Retention(config.GetOrderExpirationTimeDuration()),
), nil
}
// OrderExpirationHandle 设置订单过期
+1
View File
@@ -2,6 +2,7 @@ package mq
import (
"fmt"
"github.com/assimon/luuu/mq/handle"
"github.com/assimon/luuu/util/log"
"github.com/hibiken/asynq"