DANGER
本页由 AI 工具参考代码编写,尚未经过人工审核,内容仅供参考。如果无法解决问题或需要协助部署,可邮箱联系:kuohu@getastra.cn
ESA(阿里云边缘安全加速)
通俗解释
ESA 是阿里云的「边缘节点服务」:用户请求先到离他最近的阿里云机房,简单的活儿(回个缓存、挡个坏流量)当场干完,只有真正需要的才转给源服务器。就像快递分拣中心,本地能处理的不往总仓发。
AstraSchedule 的高并发部署用 ESA 做入口:WAF 防护 + 边缘函数 + KV 缓存都在这一层完成,绝大多数课表请求不会打到函数计算源站。
专业解释
ESA(Edge Security Acceleration)是阿里云的一体化边缘平台,把 CDN 加速、WAF 安全防护、边缘函数(在边缘节点上运行的代码)和边缘 KV(键值存储)组合在一起:
- 边缘函数:请求到达边缘时执行的轻量代码,可以决定直接应答、质询还是回源。AstraSchedule 用它做课表版本协商(版本一致返回
304,不一致才回源) - 边缘 KV:分布在边缘节点的键值存储(本项目容量 1GB),只存课表的版本号,不存响应体
- WAF 自定义规则:按 UA / Referer / 地理位置做拦截或 JS 质询,AstraSchedule 用「第一方标识白名单」识别自家流量
- 平台缓存:对静态资源的透明缓存,与边缘函数 KV 是两套独立机制
与 Cloudflare 的主要差异:ESA 在中国大陆有节点(延迟低、可配合 ICP 备案),但 API 防护、合法爬虫识别等能力受套餐等级限制。
在本项目中的位置
- 课表读路径:
客户端 → ESA 边缘(WAF + 边缘函数 + KV)→ 函数计算 → SQLite - 写路径通过响应头
X-Astra-Purge-Scopes通知边缘失效对应缓存 - 租户子域名的 CNAME 记录也由 sys-backend 通过 ESA OpenAPI 管理
