scheduler

package
v1.5.5 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 17, 2026 License: GPL-3.0 Imports: 18 Imported by: 0

Documentation

Index

Constants

View Source
const (
	SITEMAP_MAX_URLS = 50000            // 每个sitemap最多5万个URL
	SITEMAP_DIR      = "./data/sitemap" // sitemap文件目录
)

Variables

This section is empty.

Functions

func GetGlobalLinkCheckService added in v1.4.0

func GetGlobalLinkCheckService() services.LinkCheckService

GetGlobalLinkCheckService 获取全局链接检测服务

func GetGlobalMeilisearchManager added in v1.2.5

func GetGlobalMeilisearchManager() *services.MeilisearchManager

GetGlobalMeilisearchManager 获取全局Meilisearch管理器

func SetGlobalLinkCheckService added in v1.4.0

func SetGlobalLinkCheckService(svc services.LinkCheckService)

SetGlobalLinkCheckService 设置全局链接检测服务

func SetGlobalMeilisearchManager added in v1.2.5

func SetGlobalMeilisearchManager(manager *services.MeilisearchManager)

SetGlobalMeilisearchManager 设置全局Meilisearch管理器

Types

type BaseScheduler

type BaseScheduler struct {
	// contains filtered or unexported fields
}

BaseScheduler 基础调度器结构

func NewBaseScheduler

func NewBaseScheduler(
	hotDramaRepo repo.HotDramaRepository,
	readyResourceRepo repo.ReadyResourceRepository,
	resourceRepo repo.ResourceRepository,
	systemConfigRepo repo.SystemConfigRepository,
	panRepo repo.PanRepository,
	cksRepo repo.CksRepository,
	tagRepo repo.TagRepository,
	categoryRepo repo.CategoryRepository,
) *BaseScheduler

NewBaseScheduler 创建基础调度器

func (*BaseScheduler) GetStopChan

func (b *BaseScheduler) GetStopChan() chan bool

GetStopChan 获取停止通道

func (*BaseScheduler) IsRunning

func (b *BaseScheduler) IsRunning() bool

IsRunning 检查是否正在运行

func (*BaseScheduler) SetRunning

func (b *BaseScheduler) SetRunning(running bool)

SetRunning 设置运行状态

func (*BaseScheduler) SleepWithStopCheck

func (b *BaseScheduler) SleepWithStopCheck(duration time.Duration) bool

SleepWithStopCheck 带停止检查的睡眠

func (*BaseScheduler) Stop

func (b *BaseScheduler) Stop()

Stop 停止调度器

type CacheCleaner added in v1.3.5

type CacheCleaner struct {
	// contains filtered or unexported fields
}

CacheCleaner 缓存清理调度器

func NewCacheCleaner added in v1.3.5

func NewCacheCleaner(baseScheduler *BaseScheduler) *CacheCleaner

NewCacheCleaner 创建缓存清理调度器

func (*CacheCleaner) IsRunning added in v1.3.5

func (cc *CacheCleaner) IsRunning() bool

IsRunning 检查是否正在运行

func (*CacheCleaner) Start added in v1.3.5

func (cc *CacheCleaner) Start()

Start 启动缓存清理任务

func (*CacheCleaner) Stop added in v1.3.5

func (cc *CacheCleaner) Stop()

Stop 停止缓存清理任务

type CleanupScheduler added in v1.4.0

type CleanupScheduler struct {
	*BaseScheduler
	// contains filtered or unexported fields
}

CleanupScheduler 转存文件自动清理调度器 周期性扫描已转存且超过保留期的资源,调用 CleanupService 执行清理

func NewCleanupScheduler added in v1.4.0

func NewCleanupScheduler(base *BaseScheduler, cleanupService *services.CleanupService) *CleanupScheduler

NewCleanupScheduler 创建自动清理调度器

func (*CleanupScheduler) IsCleanupRunning added in v1.4.0

func (c *CleanupScheduler) IsCleanupRunning() bool

IsCleanupRunning 检查自动清理任务是否在运行

func (*CleanupScheduler) Start added in v1.4.0

func (c *CleanupScheduler) Start()

Start 启动自动清理定时任务

func (*CleanupScheduler) Stop added in v1.4.0

func (c *CleanupScheduler) Stop()

Stop 停止自动清理定时任务

type GlobalScheduler

type GlobalScheduler struct {
	// contains filtered or unexported fields
}

GlobalScheduler 全局调度器管理器

func GetGlobalScheduler

func GetGlobalScheduler(hotDramaRepo repo.HotDramaRepository, readyResourceRepo repo.ReadyResourceRepository, resourceRepo repo.ResourceRepository, systemConfigRepo repo.SystemConfigRepository, panRepo repo.PanRepository, cksRepo repo.CksRepository, tagRepo repo.TagRepository, categoryRepo repo.CategoryRepository, taskItemRepo repo.TaskItemRepository, taskRepo repo.TaskRepository) *GlobalScheduler

GetGlobalScheduler 获取全局调度器实例(单例模式)

func (*GlobalScheduler) GetHotDramaNames

func (gs *GlobalScheduler) GetHotDramaNames() ([]string, error)

GetHotDramaNames 手动获取热播剧名字

func (*GlobalScheduler) GetSitemapConfig added in v1.3.5

func (gs *GlobalScheduler) GetSitemapConfig() (bool, error)

GetSitemapConfig 获取Sitemap配置

func (*GlobalScheduler) IsCleanupSchedulerRunning added in v1.4.0

func (gs *GlobalScheduler) IsCleanupSchedulerRunning() bool

IsCleanupSchedulerRunning 检查转存文件自动清理任务是否在运行

func (*GlobalScheduler) IsGoogleIndexSchedulerRunning added in v1.3.5

func (gs *GlobalScheduler) IsGoogleIndexSchedulerRunning() bool

IsGoogleIndexSchedulerRunning 检查Google索引调度任务是否在运行

func (*GlobalScheduler) IsHotDramaSchedulerRunning

func (gs *GlobalScheduler) IsHotDramaSchedulerRunning() bool

IsHotDramaSchedulerRunning 检查热播剧定时任务是否在运行

func (*GlobalScheduler) IsReadyResourceRunning

func (gs *GlobalScheduler) IsReadyResourceRunning() bool

IsReadyResourceRunning 检查待处理资源自动处理任务是否在运行

func (*GlobalScheduler) IsSitemapSchedulerRunning added in v1.3.5

func (gs *GlobalScheduler) IsSitemapSchedulerRunning() bool

IsSitemapSchedulerRunning 检查Sitemap定时任务是否在运行

func (*GlobalScheduler) StartCleanupScheduler added in v1.4.0

func (gs *GlobalScheduler) StartCleanupScheduler()

StartCleanupScheduler 启动转存文件自动清理定时任务

func (*GlobalScheduler) StartGoogleIndexScheduler added in v1.3.5

func (gs *GlobalScheduler) StartGoogleIndexScheduler()

StartGoogleIndexScheduler 启动Google索引调度任务

func (*GlobalScheduler) StartHotDramaScheduler

func (gs *GlobalScheduler) StartHotDramaScheduler()

StartHotDramaScheduler 启动热播剧定时任务

func (*GlobalScheduler) StartReadyResourceScheduler

func (gs *GlobalScheduler) StartReadyResourceScheduler()

StartReadyResourceScheduler 启动待处理资源自动处理任务

func (*GlobalScheduler) StartSitemapScheduler added in v1.3.5

func (gs *GlobalScheduler) StartSitemapScheduler()

StartSitemapScheduler 启动Sitemap调度任务

func (*GlobalScheduler) StopCleanupScheduler added in v1.4.0

func (gs *GlobalScheduler) StopCleanupScheduler()

StopCleanupScheduler 停止转存文件自动清理定时任务

func (*GlobalScheduler) StopGoogleIndexScheduler added in v1.3.5

func (gs *GlobalScheduler) StopGoogleIndexScheduler()

StopGoogleIndexScheduler 停止Google索引调度任务

func (*GlobalScheduler) StopHotDramaScheduler

func (gs *GlobalScheduler) StopHotDramaScheduler()

StopHotDramaScheduler 停止热播剧定时任务

func (*GlobalScheduler) StopReadyResourceScheduler

func (gs *GlobalScheduler) StopReadyResourceScheduler()

StopReadyResourceScheduler 停止待处理资源自动处理任务

func (*GlobalScheduler) StopSitemapScheduler added in v1.3.5

func (gs *GlobalScheduler) StopSitemapScheduler()

StopSitemapScheduler 停止Sitemap调度任务

func (*GlobalScheduler) TriggerSitemapGeneration added in v1.3.5

func (gs *GlobalScheduler) TriggerSitemapGeneration()

TriggerSitemapGeneration 手动触发sitemap生成

func (*GlobalScheduler) UpdateSchedulerStatusWithAutoTransfer

func (gs *GlobalScheduler) UpdateSchedulerStatusWithAutoTransfer(autoFetchHotDramaEnabled bool, autoProcessReadyResources bool, autoTransferEnabled bool)

UpdateSchedulerStatusWithAutoTransfer 根据系统配置更新调度器状态(包含自动转存)

func (*GlobalScheduler) UpdateSchedulerStatusWithCleanup added in v1.4.0

func (gs *GlobalScheduler) UpdateSchedulerStatusWithCleanup(enabled bool)

UpdateSchedulerStatusWithCleanup 根据配置立即启停自动清理调度器 SC-002:配置变更立即生效,无需重启

func (*GlobalScheduler) UpdateSitemapConfig added in v1.3.5

func (gs *GlobalScheduler) UpdateSitemapConfig(enabled bool) error

UpdateSitemapConfig 更新Sitemap配置

type GoogleIndexScheduler added in v1.3.5

type GoogleIndexScheduler struct {
	*BaseScheduler
	// contains filtered or unexported fields
}

GoogleIndexScheduler Google索引调度器

func NewGoogleIndexScheduler added in v1.3.5

func NewGoogleIndexScheduler(baseScheduler *BaseScheduler, taskItemRepo repo.TaskItemRepository, taskRepo repo.TaskRepository) *GoogleIndexScheduler

NewGoogleIndexScheduler 创建Google索引调度器

func (*GoogleIndexScheduler) IsRunning added in v1.3.5

func (s *GoogleIndexScheduler) IsRunning() bool

IsRunning 检查调度器是否正在运行

func (*GoogleIndexScheduler) SetRunning added in v1.3.5

func (s *GoogleIndexScheduler) SetRunning(running bool)

SetRunning 设置运行状态

func (*GoogleIndexScheduler) Start added in v1.3.5

func (s *GoogleIndexScheduler) Start()

Start 启动Google索引调度任务

func (*GoogleIndexScheduler) Stop added in v1.3.5

func (s *GoogleIndexScheduler) Stop()

Stop 停止Google索引调度任务

type HotDramaScheduler

type HotDramaScheduler struct {
	*BaseScheduler
	// contains filtered or unexported fields
}

HotDramaScheduler 热播剧调度器

func NewHotDramaScheduler

func NewHotDramaScheduler(base *BaseScheduler) *HotDramaScheduler

NewHotDramaScheduler 创建热播剧调度器

func (*HotDramaScheduler) GetHotDramaNames

func (h *HotDramaScheduler) GetHotDramaNames() ([]string, error)

GetHotDramaNames 获取热播剧名称列表(公共方法)

func (*HotDramaScheduler) Start

func (h *HotDramaScheduler) Start()

Start 启动热播剧定时任务

func (*HotDramaScheduler) Stop

func (h *HotDramaScheduler) Stop()

Stop 停止热播剧定时任务

type Manager

type Manager struct {
	// contains filtered or unexported fields
}

Manager 调度器管理器

func NewManager

func NewManager(
	hotDramaRepo repo.HotDramaRepository,
	readyResourceRepo repo.ReadyResourceRepository,
	resourceRepo repo.ResourceRepository,
	systemConfigRepo repo.SystemConfigRepository,
	panRepo repo.PanRepository,
	cksRepo repo.CksRepository,
	tagRepo repo.TagRepository,
	categoryRepo repo.CategoryRepository,
	taskItemRepo repo.TaskItemRepository,
	taskRepo repo.TaskRepository,
) *Manager

NewManager 创建调度器管理器

func (*Manager) GetHotDramaNames

func (m *Manager) GetHotDramaNames() ([]string, error)

GetHotDramaNames 获取热播剧名称列表

func (*Manager) GetSitemapConfig added in v1.3.5

func (m *Manager) GetSitemapConfig() (bool, error)

GetSitemapConfig 获取Sitemap配置

func (*Manager) GetStatus

func (m *Manager) GetStatus() map[string]bool

GetStatus 获取所有调度任务的状态

func (*Manager) IsCleanupRunning added in v1.4.0

func (m *Manager) IsCleanupRunning() bool

IsCleanupRunning 检查转存文件自动清理调度任务是否在运行

func (*Manager) IsGoogleIndexRunning added in v1.3.5

func (m *Manager) IsGoogleIndexRunning() bool

IsGoogleIndexRunning 检查Google索引调度任务是否在运行

func (*Manager) IsHotDramaRunning

func (m *Manager) IsHotDramaRunning() bool

IsHotDramaRunning 检查热播剧调度任务是否正在运行

func (*Manager) IsReadyResourceRunning

func (m *Manager) IsReadyResourceRunning() bool

IsReadyResourceRunning 检查待处理资源调度任务是否正在运行

func (*Manager) IsSitemapRunning added in v1.3.5

func (m *Manager) IsSitemapRunning() bool

IsSitemapRunning 检查Sitemap调度任务是否在运行

func (*Manager) StartAll

func (m *Manager) StartAll()

StartAll 启动所有调度任务

func (*Manager) StartCleanupScheduler added in v1.4.0

func (m *Manager) StartCleanupScheduler()

StartCleanupScheduler 启动转存文件自动清理调度任务

func (*Manager) StartGoogleIndexScheduler added in v1.3.5

func (m *Manager) StartGoogleIndexScheduler()

StartGoogleIndexScheduler 启动Google索引调度任务

func (*Manager) StartHotDramaScheduler

func (m *Manager) StartHotDramaScheduler()

StartHotDramaScheduler 启动热播剧调度任务

func (*Manager) StartReadyResourceScheduler

func (m *Manager) StartReadyResourceScheduler()

StartReadyResourceScheduler 启动待处理资源调度任务

func (*Manager) StartSitemapScheduler added in v1.3.5

func (m *Manager) StartSitemapScheduler()

StartSitemapScheduler 启动Sitemap调度任务

func (*Manager) StopAll

func (m *Manager) StopAll()

StopAll 停止所有调度任务

func (*Manager) StopCleanupScheduler added in v1.4.0

func (m *Manager) StopCleanupScheduler()

StopCleanupScheduler 停止转存文件自动清理调度任务

func (*Manager) StopGoogleIndexScheduler added in v1.3.5

func (m *Manager) StopGoogleIndexScheduler()

StopGoogleIndexScheduler 停止Google索引调度任务

func (*Manager) StopHotDramaScheduler

func (m *Manager) StopHotDramaScheduler()

StopHotDramaScheduler 停止热播剧调度任务

func (*Manager) StopReadyResourceScheduler

func (m *Manager) StopReadyResourceScheduler()

StopReadyResourceScheduler 停止待处理资源调度任务

func (*Manager) StopSitemapScheduler added in v1.3.5

func (m *Manager) StopSitemapScheduler()

StopSitemapScheduler 停止Sitemap调度任务

func (*Manager) TriggerSitemapGeneration added in v1.3.5

func (m *Manager) TriggerSitemapGeneration()

TriggerSitemapGeneration 手动触发sitemap生成

func (*Manager) UpdateSitemapConfig added in v1.3.5

func (m *Manager) UpdateSitemapConfig(enabled bool) error

UpdateSitemapConfig 更新Sitemap配置

type ReadyResourceScheduler

type ReadyResourceScheduler struct {
	*BaseScheduler
	// contains filtered or unexported fields
}

ReadyResourceScheduler 待处理资源调度器

func NewReadyResourceScheduler

func NewReadyResourceScheduler(base *BaseScheduler) *ReadyResourceScheduler

NewReadyResourceScheduler 创建待处理资源调度器

func (*ReadyResourceScheduler) IsReadyResourceRunning

func (r *ReadyResourceScheduler) IsReadyResourceRunning() bool

IsReadyResourceRunning 检查待处理资源任务是否正在运行

func (*ReadyResourceScheduler) Start

func (r *ReadyResourceScheduler) Start()

Start 启动待处理资源定时任务

func (*ReadyResourceScheduler) Stop

func (r *ReadyResourceScheduler) Stop()

Stop 停止待处理资源定时任务

type Sitemap added in v1.3.5

type Sitemap struct {
	Loc     string `xml:"loc"`
	LastMod string `xml:"lastmod"`
}

Sitemap 单个sitemap信息

type SitemapIndex added in v1.3.5

type SitemapIndex struct {
	XMLName  xml.Name  `xml:"sitemapindex"`
	XMLNS    string    `xml:"xmlns,attr"`
	Sitemaps []Sitemap `xml:"sitemap"`
}

SitemapIndex sitemap索引结构

type SitemapScheduler added in v1.3.5

type SitemapScheduler struct {
	*BaseScheduler
	// contains filtered or unexported fields
}

SitemapScheduler Sitemap调度器

func NewSitemapScheduler added in v1.3.5

func NewSitemapScheduler(baseScheduler *BaseScheduler) *SitemapScheduler

NewSitemapScheduler 创建Sitemap调度器

func (*SitemapScheduler) GetSitemapConfig added in v1.3.5

func (s *SitemapScheduler) GetSitemapConfig() (bool, error)

GetSitemapConfig 获取Sitemap配置

func (*SitemapScheduler) GetStopChan added in v1.3.5

func (s *SitemapScheduler) GetStopChan() chan bool

GetStopChan 获取停止通道

func (*SitemapScheduler) IsRunning added in v1.3.5

func (s *SitemapScheduler) IsRunning() bool

IsRunning 检查Sitemap调度任务是否在运行

func (*SitemapScheduler) SetRunning added in v1.3.5

func (s *SitemapScheduler) SetRunning(running bool)

SetRunning 设置运行状态

func (*SitemapScheduler) Start added in v1.3.5

func (s *SitemapScheduler) Start()

Start 启动Sitemap调度任务

func (*SitemapScheduler) Stop added in v1.3.5

func (s *SitemapScheduler) Stop()

Stop 停止Sitemap调度任务

func (*SitemapScheduler) UpdateSitemapConfig added in v1.3.5

func (s *SitemapScheduler) UpdateSitemapConfig(enabled bool) error

UpdateSitemapConfig 更新Sitemap配置

type Url added in v1.3.5

type Url struct {
	Loc        string  `xml:"loc"`
	LastMod    string  `xml:"lastmod"`
	ChangeFreq string  `xml:"changefreq"`
	Priority   float64 `xml:"priority"`
}

Url 单个URL信息

type UrlSet added in v1.3.5

type UrlSet struct {
	XMLName xml.Name `xml:"urlset"`
	XMLNS   string   `xml:"xmlns,attr"`
	URLs    []Url    `xml:"url"`
}

UrlSet sitemap内容

type XunleiKeepaliveScheduler added in v1.5.0

type XunleiKeepaliveScheduler struct {
	*BaseScheduler
	// contains filtered or unexported fields
}

XunleiKeepaliveScheduler 迅雷 token 保活调度器。

迅雷没有"定时续期"机制,refresh_token 长期不被使用会自然过期(约 30 天), 且安卓方案无账号密码兜底,过期后无法自动恢复。本任务定期遍历所有有效迅雷账号, 调用 Keepalive 刷新 access_token(顺带轮转 refresh_token),给 refresh_token 续命, 避免闲置账号失效。

func NewXunleiKeepaliveScheduler added in v1.5.0

func NewXunleiKeepaliveScheduler(base *BaseScheduler) *XunleiKeepaliveScheduler

NewXunleiKeepaliveScheduler 创建迅雷 token 保活调度器

func (*XunleiKeepaliveScheduler) IsRunning added in v1.5.0

func (s *XunleiKeepaliveScheduler) IsRunning() bool

IsRunning 检查迅雷 token 保活任务是否正在运行

func (*XunleiKeepaliveScheduler) Start added in v1.5.0

func (s *XunleiKeepaliveScheduler) Start()

Start 启动迅雷 token 保活定时任务

func (*XunleiKeepaliveScheduler) Stop added in v1.5.0

func (s *XunleiKeepaliveScheduler) Stop()

Stop 停止迅雷 token 保活定时任务

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL