性能测试
本文档介绍如何使用 JMeter 对 YiAsk 系统进行性能测试。
测试目的
性能测试用于评估系统在不同并发负载下的表现,包括:
- 响应时间 - 用户请求的处理速度
- 吞吐量 - 系统每秒能处理的请求数
- 并发能力 - 系统能稳定支持的最大并发用户数
- 稳定性 - 系统在长时间压力下的表现
JMeter 安装
下载安装
- 下载 Apache JMeter
- 解压到本地目录
- 运行
jmeter(Linux/Mac) 或jmeter.bat(Windows)
验证安装
启动 JMeter 后,应该能看到 GUI 界面。
压测文件
下载 YiAsk 性能测试脚本,在 JMeter 中打开该文件。
变量配置
打开测试脚本后,在 TestPlan → 用户定义的变量 中配置以下变量:
注意:请根据实际部署环境修改以上变量值。
测试场景
测试脚本包含以下场景,可独立或组合运行:
场景1:登录
测试用户登录接口的性能,包括:
- 登录请求
- Token 提取
场景2A:简单问答
测试简单自然语言查询的性能,如:
- "销售额"
- "订单数量"
- 等单指标查询
场景2B:复杂问答
测试复杂自然语言查询的性能,如:
- "去年1季度销量前五的门店在今年2季度的销售额以及销量分别多少?"
- "按地区统计销售金额"
- 等多指标/跨维度查询
场景3:Schema 列表
测试获取语义模型列表接口的性能。
场景4:获取提示词
测试获取提示词列表接口的性能。
运行压测
单场景运行
- 在 JMeter 左侧树中选择要运行的场景
- 禁用其他场景(右键 → Disable)
- 点击绿色箭头按钮启动
综合压测
- 确保所有需要的场景都已启用
- 调整线程组的线程数和 Ramp-Up 时间
- 点击绿色箭头按钮启动
查看结果
压测过程中可查看:
- 汇总报告 - 整体统计数据
- 查看结果树 - 每个请求的详细信息
结果分析
关键指标说明
性能评估
寻找最大并发
通过逐步增加线程数,找到系统的"拐点":
- 从小并发开始(如 10 个线程)
- 逐步增加并发(20、50、100、200...)
- 观察响应时间和错误率
- 当出现以下情况时,前一个并发数即为最大并发:
- 响应时间突然暴涨
- 错误率超过 1%
服务器配置建议
数据库优化
- 使用连接池
- 适当增加数据库连接数
- 考虑数据库索引优化

