collect optimize

This commit is contained in:
mubai
2026-04-01 00:21:29 +08:00
parent 8a6bc33cad
commit 8243d2171f
47 changed files with 2774 additions and 1770 deletions

View File

@@ -42,35 +42,15 @@ func CollectCrontabInit() {
if system.ExistTask() {
// 将系统中的定时任务重新设置到 CollectCron中
for _, task := range system.GetAllFilmTask() {
switch task.Model {
case 0:
cid, err := spider.AddAutoUpdateCron(task.Id, task.Spec)
// 如果任务添加失败则直接返回错误信息
if err != nil {
log.Println("影视自动更新任务添加失败: ", err.Error())
continue
}
// 将新的定时任务Id记录到Task中
task.Cid = cid
case 1:
cid, err := spider.AddFilmUpdateCron(task.Id, task.Spec)
// 如果任务添加失败则直接返回错误信息
if err != nil {
log.Println("影视更新定时任务添加失败: ", err.Error())
continue
}
// 将定时任务Id记录到Task中
task.Cid = cid
case 2:
cid, err := spider.AddFilmRecoverCron(task.Spec)
// 如果任务添加失败则直接返回错误信息
if err != nil {
log.Println("自动清理失败采集记录定时任务添加失败: ", err.Error())
continue
}
// 将定时任务Id记录到Task中
task.Cid = cid
// 添加任务到 cron中
cid, err := spider.AddCron(task.Id, task.Spec)
// 如果任务添加失败则直接返回错误信息
if err != nil {
log.Println("自动任务恢复失败: ", err.Error())
continue
}
// 将新的定时任务Id记录到Task中
task.Cid = cid
system.UpdateFilmTask(task)
}
} else {
@@ -80,25 +60,25 @@ func CollectCrontabInit() {
2. 添加一条默认任务, 定时处理采集失败的记录
3.生成任务信息
*/
task := system.FilmCollectTask{Id: util.GenerateSalt(), Time: config.DefaultUpdateTime, Spec: config.DefaultUpdateSpec,
collectTask := system.FilmCollectTask{Id: util.GenerateSalt(), Time: config.DefaultUpdateTime, Spec: config.DefaultUpdateSpec,
Model: 0, State: false, Remark: "每20分钟执行一次已启用站点数据的自动更新"}
// 添加一条定时任务-影片定时更新
cid, err := spider.AddAutoUpdateCron(task.Id, task.Spec)
cid, err := spider.AddCron(collectTask.Id, collectTask.Spec)
// 如果任务添加失败则直接返回错误信息
if err != nil {
log.Println("影视更新定时任务添加失败: ", err.Error())
return
}
// 将定时任务Id记录到Task中
task.Cid = cid
collectTask.Cid = cid
// 如果没有异常则将当前定时任务信息记录到redis中
system.SaveFilmTask(task)
system.SaveFilmTask(collectTask)
// 添加一条定时任务-定期处理失败请求
recoverTask := system.FilmCollectTask{Id: util.GenerateSalt(), Time: 0, Spec: config.EveryWeekSpec,
Model: 2, State: false, Remark: "每周日凌晨4点清理一次采集失败的采集记录"}
Model: 2, State: false, Remark: "每周日凌晨3点清理一次采集失败的采集记录"}
// 添加一条定时任务-影片定时更新
cid, err = spider.AddFilmRecoverCron(recoverTask.Spec)
cid, err = spider.AddCron(recoverTask.Id, recoverTask.Spec)
// 如果任务添加失败则直接返回错误信息
if err != nil {
log.Println("失败采集恢复定时任务添加失败: ", err.Error())
@@ -108,6 +88,21 @@ func CollectCrontabInit() {
recoverTask.Cid = cid
// 如果没有异常则将当前定时任务信息记录到redis中
system.SaveFilmTask(recoverTask)
// 添加定时任务-定期同步redis中的影片信息
syncTask := system.FilmCollectTask{Id: util.GenerateSalt(), Time: 0, Spec: config.PeriodSyncSpec,
Model: 3, State: false, Remark: "每周日凌晨4点同步一次影片信息"}
cid, err = spider.AddCron(syncTask.Id, syncTask.Spec)
// 如果任务添加失败则直接返回错误信息
if err != nil {
log.Println("影片信息同步任务执行失败: ", err.Error())
return
}
// 将定时任务Id记录到Task中
syncTask.Cid = cid
// 如果没有异常则将当前定时任务信息记录到redis中
system.SaveFilmTask(syncTask)
}
// 完成初始化后启动 Cron