docs(timer): 补充定时器技能文档 - execute 日志包裹机制说明与本地开发常见坑位

This commit is contained in:
augushong
2026-06-02 23:06:27 +08:00
parent 76b23d4c70
commit 62a17647e1

View File

@@ -211,9 +211,10 @@ site 任务会按站点域名发起请求,默认从 `sysconfig('site','site_do
## 常见坑位(快速自检)
- `name` 重复:会导致 Cache key 冲突,表现为任务莫名其妙不跑/跑得不对
- `name` 重复:会导致 Cache key 冲突,表现为任务"莫名其妙不跑/跑得不对"
- `concurrency` 与控制器侧 `$concurrency` 不一致:会触发 `concurrency id/count error`
- 只依赖控制器侧 `$frequency`:它只是防刷,不是调度;调度频率以定时器侧 Cache 节流为准
- 本地开发忘记 `--local``site` 任务默认请求 `sysconfig('site','site_domain')` 指向的生产域名,不带 `--local` 会直接打到线上
## 多节点协调
@@ -246,7 +247,7 @@ site 任务会按站点域名发起请求,默认从 `sysconfig('site','site_do
### 执行日志
`TimerControllerBase` 提供 `logStart()` / `logEnd()` 方法记录执行日志。`host_id` 会自动注入到 site 任务的 URL 参数中,用于标识执行节点。
`TimerControllerBase::execute()` 自动包裹 `do()` 并调用 `logStart()` / `logEnd()` 记录执行日志,开发者无需手动调用。配置中写 `/do`,运行时 `TimerServiceBase` 自动重写为 `/execute` 以触发日志包裹`host_id` 会自动注入到 site 任务的 URL 参数中,用于标识执行节点。
### 管理后台