API 服务器
查看应用和各实例的 API 服务器状态、健康检查与自动重启,并手动启动、重启或停止。
API 服务器是为应用和各实例执行 Python 任务的后台服务。安装、版本切换、扩展与模型管理等操作都通过它们完成。这个设置页没有需要保存的字段:它列出所有 API 服务器的实时状态,并提供少量手动操作。日常使用不需要打开它,只在任务长时间无响应或出现 API 服务器错误时查看。
服务器列表
列表第一项是“应用”的服务器,其余每项对应一个实例,以实例名称显示。
| 服务器 | 何时运行 |
|---|---|
| 应用 | 应用运行期间保持运行,不会因空闲而停止 |
| 实例 | 实例的操作需要时自动启动;使用中保持运行,空闲约 3 分钟后自动停止,之后按需重启 |
实例服务器处于“已停止”是正常状态,下次需要时会自动启动,不需要手动启动。
状态与信息
每项右侧的标签显示当前状态。运行中的服务器会根据健康检查结果显示为:
| 标签 | 含义 |
|---|---|
| 运行中 | 最近的健康检查正常 |
| 检查失败 | 健康检查开始失败,尚未确认失去响应 |
| 无响应 | 已确认失去响应,即将自动重启 |
| 正在恢复 | 正在自动重启,并等待新进程通过检查 |
| 失败 | 启动失败或自动重启次数已用完,下方显示错误 |
标签下方列出以下信息:
| 信息 | 说明 |
|---|---|
| 端口 | 服务器监听的本地端口 |
| 运行时间 | 本次启动后已运行的时间 |
| 生命周期 | 应用运行期间保持运行、使用中保持运行,或“空闲 … 后停止”的倒计时 |
| Python 任务 | 运行中与排队中的任务数量 |
| 工作线程 | 忙碌与总工作线程数量 |
| 进程 ID | 服务器进程的 PID,可在系统任务管理器中对照 |
| 上次健康检查 | 距上次检查的时间与响应延迟,或连续失败次数 |
| 自动重启 | 最近 10 分钟内的自动重启次数和上限,以及上次重启原因 |
健康检查与自动重启
应用会定期检查每个运行中的服务器,无需手动干预:
- 每 15 秒检查一次,单次检查超过 5 秒未响应即视为失败;
- 一次检查失败后改为每 3 秒复查,复查再连续失败 3 次才确认“无响应”;
- 确认无响应或进程意外退出后自动重启;
- 每个服务器在 10 分钟内最多自动重启 3 次,依次等待 0、10、30 秒后重启。
超过上限后,服务器停留在“失败”,不再自动重启,以免反复中断任务。应用服务器进入这种状态时,首页底部会显示“应用的 API 服务器已停止”横幅,可直接重启或打开本设置页。
手动操作
| 操作 | 何时可用 | 行为 |
|---|---|---|
| 启动 | 已停止或失败 | 启动服务器 |
| 重启 | 运行中 | 空闲时立即重启;有进行中的工作时等待其完成后再重启 |
| 立即重启 | 等待重启 | 不再等待,立即重启 |
| 取消等待中的重启 | 等待重启 | 撤销等待中的重启,服务器继续运行 |
| 检查健康状态 | 运行中 | 立即执行一次健康检查,并在右下角显示响应时间或错误 |
| 停止 | 未停止 | 停止服务器 |
点击“重启”时如果服务器仍有工作,会显示“等待重启”标签,并在当前工作完成后自动重启。等待期间,新的后台任务会被拒绝,需要在重启完成后重试;已经在进行的工作不受影响。
立即重启和停止会中断工作
服务器有进行中的工作时,“立即重启”和“停止”会先请求确认。被中断的任务无法继续,需要在重启后重新执行。没有明确原因时,优先使用“重启”,让它在工作完成后进行。
排查建议
先查看状态标签和“上次检查错误”或“错误”信息,判断是暂时无响应还是启动失败。
对运行中的服务器点击“检查健康状态”,确认它当前是否响应。
服务器处于“失败”时,先排除运行环境或端口问题,再点击“启动”。
反复失败时生成诊断包,并按下方指南整理错误信息。