Skip to content

pkg/api(内部视角) ​

🌐 `pkg/api/server.go` — HTTP API 实现细节。

pkg/api 用 gorilla/mux 提供 HTTP 服务,含并发限流、鉴权中间件、截图/批量/健康/统计端点。

📁 源码:pkg/api/server.go

并发限流 ​

符号源码说明
InitConcurrencyLimiter(max, queueSize)L27初始化信号量+队列
AcquireConcurrencyPermit(ctx)L52获取许可(可排队)
ReleaseConcurrencyPermit()L84释放
GetConcurrencyStats()L98活跃/等待/上限/队列
CreateConcurrencyLimitMiddleware()L110mux 中间件

端点 ​

符号源码说明
HandleStatsL156GET /stats
HandleHealthL175GET /health

并发模型 ​

限流统计 ​

GetConcurrencyStats 返回四元组:active(执行中)、waiting(排队)、max(上限)、queue(队列容量)+ uptime。GET /stats 暴露给监控。

中间件链 ​

见 API 概览、并发、鉴权。

下一步 ​

基于 MIT 许可发布