基准测试
此目录包含使用 Benchee 的 SMS-C 系统性能基准测试。
可用基准测试
1. 原始 SMS 基准测试 (raw_sms_bench.exs)
基准测试 submit_message_raw API 端点,使用真实的 SMS PDU。
特点:
- 使用真实的 SMS PDU(将您的 PDU 添加到文件中的
@sample_pdus列表中) - 通过在每次迭代前清除指纹来禁用重复检测
- 输出控制台和 HTML 报告
用法:
mix run benchmarks/raw_sms_bench.exs
输出: benchmarks/output/raw_sms_benchmark.html
2. 消息 API 基准测试 (message_api_bench.exs)
基准测试各种消息 API 操作,包括插入、检索和路由。
特点:
- 测试 insert_message(简单和带路由)
- 测试 get_messages_for_smsc
- 测试 list_message_queues
- 为现实场景预填充测试数据到数据库
用法:
mix run benchmarks/message_api_bench.exs
输出: benchmarks/output/message_api_benchmark.html
配置
所有基准测试使用 Benchee,默认设置如下:
- 热身:2 秒
- 时间:10 秒
- 内存时间:2 秒
- 启用扩展统计
- 自动生成 HTML 报告
输出
HTML 基准测试报告生成在 benchmarks/output/ 中,包括:
- 详细的性能指标
- 比较图表
- 内存使用统计
- 统计分析