今日已办
分工
- 测试 - 谢雨晨、郑兆隆
- 将1的测试结果记录整理为一个表格,列有:平均内存、最大内存、95内存、cpu的这些等等 - 邓烨钒
- HyperScan和官方正则库的benchmark对比 - 张锐添
- PPT制作 - 其他人
- 灵活调动
进度
- trace上报:jaeger-collector和signoz-collector的cpu、内存,数据库存储大小
- trace查询:signoz-web的url压测某条trace,得到耗时
- metric上报:otel-collector和signoz-collector的cpu、内存,数据库存储大小
- hyperscan和go官方库的benchmark对比
- collector测试:trace-40% metric-40%
- 查询测试:20%
- ppt:60%
Prometheus
grafana - How to get the 95th percentile of an average in Prometheus? - Stack Overflow
HTTP API | Prometheus
Grafana 配置 Prometheus
PPT流程
-
项目介绍:
- 介绍项目解决什么问题,重点是为什么有这个项目。- 肖泽鑫2分钟
- 分多一页讲hyperscan和waterwill任务。- 张锐添1分钟
-
成果展示:
- 简单简单展示otel功能,一页ppt。- 邓晔钒 30秒视频+30秒介绍
- 重点放在各种表格上,你们做的性能对比证明otel更优。然后按照周六对齐的成果部份顺序展示:
- 岑煜森 2分钟
- collector cpu、内存对比 30秒
- es和ck 存储大小 30秒
- web-url 耗时查询性能 30秒
- hyperscan、waterwill 30秒
-
项目难点:举例最多3个你们遇到的问题和解决办法,每个一两页PPT
- 郑兆隆 & 谢雨晨
- 1个人 服务部署 1.5分钟
- 1个人 测试 1.5分钟
- 。。。
-
组员分工:每个人准备一到两页PPT介绍自己在项目中负责的部份
- 每个人 1一页 8分钟
明日待办
- 继续完成测试的结果
- 完善PPT和结果展示
新测试报告
我们打算在 10 万到 100 万之间摸一个不会丢的量以及合适的并发量,作为不同 collector 测存储和查询的前提
我们能不能固定一个数量,然后使用相同的代码来上报相同的trace(只是可以控制线程睡眠时间)来调整耗时,让两种collector都能完整的上报所有数据,保证不会丢失,最后来计算存储大小
Trace-Collector
collector | 测试上报span数 / w | test耗时 / s | 实际存储span数目 / w | cpu_age / % | cpu_95th / % | mem_avg / MB | 存储容量 / MB |
---|---|---|---|---|---|---|---|
jaeger-collector | 100 | 337.5 | 100 | 26.65 | 29.66 | 40.80 | 1239.04 |
jaeger-collector | 100 | 338.01 | 99.95 | 26.66 | 30.12 | 40.39 | 1239.04 |
signoz-collector | 100 | 573.04 | 101 | 31.26 | 36.94 | 269.25 | 450.53 |
signoz-collector | 100 | 533.67 | 99.88 | 33.44 | 37.76 | 307.94 | 456.17 |
signoz-collector | 100 | 543.27 | 104.5 | 32.71 | 36.04 | 293.42 | 453.66 |
otel-collector | 100 | 336.16 | 100 | 5.49 | 6.11 | 67.15 | 68.74 |
otel-collector | 100 | 336.54 | 100 | 5.79 | 6.03 | 68.43 | 68.61 |
cpu_avg(%) | cpu 95th(%) | mem_avg(B) | size (MiB) | 备注 | 上报耗时(s) | |
---|---|---|---|---|---|---|
signoz-trace | 36.00 | 151.75 | 1334004344 | 450 | 协程数=100;每个2000x5个spans(每个span间隔为55毫秒),上报100万,丢失=0 | 557.067 |
signoz-trace | 36.29 | 147.21 | 1473282048 | 451.3 | 协程数=100;每个2000x5个spans(每个span间隔为55毫秒),上报100万,丢失=0 | 557.03 |
signoz-metric | 61.32 | 177.06 | 284539984 | 2.56 | 每个2000x3个不同类型的指标(间隔为80毫秒),上报60万,sample_v2 行数=99万 | 163.357 |
signoz-metric | 57.25 | 176.35 | 272792398 | 2.77 | 每个2000x3个不同类型的指标(间隔为100毫秒),上报60万,sample_v2 行数=130万左右 | 203.351 |
otel-trace | 8.01 | 9.96 | 214051636 | 69.81 | 协程数100,span上报间隔20ms | 207.766 |
otel-trace | 8.04 | 9.73 | 221531567 | 69.81 | 协程数100,span上报间隔20ms | 207.836 |
otel-metric | 23.02 | 41.66 | 300469474 | 11.22 | 协程数100,metrics上报间隔20ms,上报共60万条 | 43.160 |
otel-metric | 19.55 | 40.59 | 309937719 | 11.18 | 协程数100, metrics上报间隔20ms,上报共60万条 | 43.110 |
Metric-Collector
collector | test耗时 / s | 实际存储列数/行数 / w | cpu_age / % | cpu_95th / % | mem_avg / MB | 存储容量 / MB |
---|---|---|---|---|---|---|
signoz-collector | 103.46 | 104.20 | 37.43 | 40.20 | 52.11 | 0.92 |
signoz-collector | 103.44 | 103.81 | 37.40 | 40.86 | 53.24 | 0.87 |
otel-collector | 103.42 | 31.02 | 39.71 | 46.89 | 152.53 | 5.88 |
otel-collector | 103.49 | 31.04 | 39.51 | 45.70 | 159.33 | 5.86 |
Web
web-url | ms |
---|---|
signoz-web | 37.71 |
signoz-web | 39.63 |
signoz-web | 37.80 |
signoz-web | 38.09 |
signoz-web | 38.75 |
signoz-web | 35.79 |
signoz-web | 35.67 |
signoz-web | 37.29 |
signoz-web | 33.09 |
signoz-web | 37.29 |
grafana | 54.77 |
grafana | 76.72 |
grafana | 62.03 |
grafana | 58.10 |
grafana | 67.44 |
grafana | 78.71 |
grafana | 65.15 |
grafana | 59.85 |
grafana | 60.63 |
grafana | 65.55 |
jaeger-web | 38.31 |
jaeger-web | 39.84 |
jaeger-web | 36.85 |
jaeger-web | 35.23 |
jaeger-web | 35.93 |
jaeger-web | 38.14 |
jaeger-web | 33.24 |
jaeger-web | 31.12 |
jaeger-web | 41.13 |
jaeger-web | 31.26 |