修复并发,暂时的,不够完整,后续还是需要重新设计,这个太乱了,傻逼AI
All checks were successful
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 9m22s
All checks were successful
构建并部署到测试环境(无 SSH) / build-and-deploy (push) Successful in 9m22s
This commit is contained in:
@@ -172,14 +172,125 @@ const (
|
||||
|
||||
// 队列配置常量
|
||||
const (
|
||||
QueueCritical = "critical" // 关键任务队列
|
||||
QueueDefault = "default" // 默认队列
|
||||
QueueLow = "low" // 低优先级队列
|
||||
DefaultRetryMax = 5
|
||||
DefaultTimeout = 10 * time.Minute
|
||||
DefaultConcurrency = 10
|
||||
QueueCritical = "critical" // 旧版关键任务队列(兼容历史任务)
|
||||
QueueDefault = "default" // 旧版默认队列(兼容历史任务)
|
||||
QueueLow = "low" // 旧版低优先级队列(兼容历史任务)
|
||||
|
||||
QueueEmailSend = TaskTypeEmailSend // 发送邮件任务队列
|
||||
QueueCommission = TaskTypeCommission // 分佣计算任务队列
|
||||
QueueIotCardImport = TaskTypeIotCardImport // IoT 卡导入任务队列
|
||||
QueueDeviceImport = TaskTypeDeviceImport // 设备导入任务队列
|
||||
QueueExportDispatch = TaskTypeExportDispatch // 导出分发任务队列
|
||||
QueueExportShard = TaskTypeExportShard // 导出分片任务队列
|
||||
QueueExportFinalize = TaskTypeExportFinalize // 导出收尾任务队列
|
||||
QueueCommissionStatsUpdate = TaskTypeCommissionStatsUpdate // 佣金统计更新任务队列
|
||||
QueueCommissionStatsSync = TaskTypeCommissionStatsSync // 佣金统计同步任务队列
|
||||
QueueCommissionStatsArchive = TaskTypeCommissionStatsArchive // 佣金统计归档任务队列
|
||||
QueuePollingRealname = TaskTypePollingRealname // 实名轮询任务队列
|
||||
QueuePollingCarddata = TaskTypePollingCarddata // 流量轮询任务队列
|
||||
QueuePollingPackage = TaskTypePollingPackage // 套餐轮询任务队列
|
||||
QueuePollingProtect = TaskTypePollingProtect // 保护期轮询任务队列
|
||||
QueuePollingCardStatus = TaskTypePollingCardStatus // 卡状态轮询任务队列
|
||||
QueuePackageFirstActivation = TaskTypePackageFirstActivation // 首次实名激活任务队列
|
||||
QueuePackageQueueActivation = TaskTypePackageQueueActivation // 主套餐排队激活任务队列
|
||||
QueuePackageDataReset = TaskTypePackageDataReset // 套餐流量重置任务队列
|
||||
QueueOrderExpire = TaskTypeOrderExpire // 订单超时取消任务队列
|
||||
QueueAutoPurchase = TaskTypeAutoPurchaseAfterRecharge // 充值后自动购包任务队列
|
||||
QueueAlertCheck = TaskTypeAlertCheck // 告警检查任务队列
|
||||
QueueDataCleanup = TaskTypeDataCleanup // 数据清理任务队列
|
||||
QueueDailyTrafficFlush = TaskTypeDailyTrafficFlush // 每日流量落盘任务队列
|
||||
|
||||
DefaultRetryMax = 5 // 默认任务最大重试次数
|
||||
DefaultTimeout = 10 * time.Minute // 默认任务超时时间
|
||||
DefaultConcurrency = 10 // 默认 Worker 并发数
|
||||
)
|
||||
|
||||
// QueueForTaskType 根据任务类型返回独立队列名。
|
||||
func QueueForTaskType(taskType string) string {
|
||||
switch taskType {
|
||||
case TaskTypeEmailSend:
|
||||
return QueueEmailSend
|
||||
case TaskTypeCommission:
|
||||
return QueueCommission
|
||||
case TaskTypeIotCardImport:
|
||||
return QueueIotCardImport
|
||||
case TaskTypeDeviceImport:
|
||||
return QueueDeviceImport
|
||||
case TaskTypeExportDispatch:
|
||||
return QueueExportDispatch
|
||||
case TaskTypeExportShard:
|
||||
return QueueExportShard
|
||||
case TaskTypeExportFinalize:
|
||||
return QueueExportFinalize
|
||||
case TaskTypeCommissionStatsUpdate:
|
||||
return QueueCommissionStatsUpdate
|
||||
case TaskTypeCommissionStatsSync:
|
||||
return QueueCommissionStatsSync
|
||||
case TaskTypeCommissionStatsArchive:
|
||||
return QueueCommissionStatsArchive
|
||||
case TaskTypePollingRealname:
|
||||
return QueuePollingRealname
|
||||
case TaskTypePollingCarddata:
|
||||
return QueuePollingCarddata
|
||||
case TaskTypePollingPackage:
|
||||
return QueuePollingPackage
|
||||
case TaskTypePollingProtect:
|
||||
return QueuePollingProtect
|
||||
case TaskTypePollingCardStatus:
|
||||
return QueuePollingCardStatus
|
||||
case TaskTypePackageFirstActivation:
|
||||
return QueuePackageFirstActivation
|
||||
case TaskTypePackageQueueActivation:
|
||||
return QueuePackageQueueActivation
|
||||
case TaskTypePackageDataReset:
|
||||
return QueuePackageDataReset
|
||||
case TaskTypeOrderExpire:
|
||||
return QueueOrderExpire
|
||||
case TaskTypeAutoPurchaseAfterRecharge:
|
||||
return QueueAutoPurchase
|
||||
case TaskTypeAlertCheck:
|
||||
return QueueAlertCheck
|
||||
case TaskTypeDataCleanup:
|
||||
return QueueDataCleanup
|
||||
case TaskTypeDailyTrafficFlush:
|
||||
return QueueDailyTrafficFlush
|
||||
default:
|
||||
return QueueDefault
|
||||
}
|
||||
}
|
||||
|
||||
// DefaultTaskQueueWeights 返回 Worker 默认监听的全部任务队列及其权重。
|
||||
func DefaultTaskQueueWeights() map[string]int {
|
||||
return map[string]int{
|
||||
QueueCritical: 6,
|
||||
QueueIotCardImport: 6,
|
||||
QueueDeviceImport: 6,
|
||||
QueueAutoPurchase: 5,
|
||||
QueuePackageFirstActivation: 5,
|
||||
QueuePackageQueueActivation: 5,
|
||||
QueueOrderExpire: 4,
|
||||
QueueEmailSend: 4,
|
||||
QueueExportDispatch: 4,
|
||||
QueueExportFinalize: 4,
|
||||
QueueCommission: 3,
|
||||
QueueAlertCheck: 3,
|
||||
QueueExportShard: 2,
|
||||
QueueCommissionStatsUpdate: 2,
|
||||
QueueCommissionStatsSync: 2,
|
||||
QueueCommissionStatsArchive: 2,
|
||||
QueuePollingRealname: 1,
|
||||
QueuePollingCarddata: 1,
|
||||
QueuePollingPackage: 1,
|
||||
QueuePollingProtect: 1,
|
||||
QueuePollingCardStatus: 1,
|
||||
QueuePackageDataReset: 1,
|
||||
QueueDataCleanup: 1,
|
||||
QueueDailyTrafficFlush: 1,
|
||||
QueueDefault: 1,
|
||||
QueueLow: 1,
|
||||
}
|
||||
}
|
||||
|
||||
// 导出任务相关常量
|
||||
const (
|
||||
ExportTaskSceneDevice = "device" // 导出场景:设备
|
||||
|
||||
Reference in New Issue
Block a user