AI 可视化请求变多时,先守住查询队列

AI 可视化请求变多时,先守住查询队列

AI 可视化请求变多时,先守住查询队列

自然语言生成图表看着很轻,背后却可能同时触发语义解析、SQL 查询和图形渲染。三个环节处理速度不同,把它们塞进一个无限队列,迟早会出现“页面还在转,数据库已经先累趴”的情况。

一次请求先拆成三段

模型只把问题转换成候选指标、维度和筛选条件;权限层负责确认用户能看哪些数据;查询服务执行受限模板,最后由前端渲染。这样即使模型给出奇怪字段,也不会直接变成任意 SQL。

队列不能只看长度

同时记录等待任务数、最老任务等待时间、取消数量和下游连接占用。达到边界后,可以拒绝新任务、降低刷新频率或返回已有结果,但不能继续无声排队。用户关闭页面时,取消信号也应传到尚未执行的查询。

用构造负载验证

准备简单聚合、长时间范围、无权限字段和依赖超时几类请求,逐步提高到达速度。观察压力先落在模型、数据库还是渲染端,再决定扩容位置。测试环境、数据规模和统计方式要一起记录,单独一个 P95 没有解释力。

数据不会因为排队就变得更准确。先限制查询范围和等待时间,系统才能把有限资源留给真正可执行的分析任务。