feat: remove Gin and standardize on nethttp
This commit is contained in:
20
PERFORMANCE.md
Normal file
20
PERFORMANCE.md
Normal file
@@ -0,0 +1,20 @@
|
||||
# GoOmni 性能基线
|
||||
|
||||
这份基线用于比较未来自研网络层,不代表生产容量承诺。测试只测进程内请求分发和 GoOmni 请求链,不包含真实 TCP、TLS、数据库或业务存储延迟。
|
||||
|
||||
运行:
|
||||
|
||||
```sh
|
||||
python3 scripts/verifyPerformance.py
|
||||
```
|
||||
|
||||
本次记录环境:Go 1.25.0、darwin/arm64、Apple M2 Max;每项连续运行 3 次:
|
||||
|
||||
```text
|
||||
BenchmarkTransportRouteDispatch/nethttp 568–671 ns/op 1344 B/op 13 allocs/op
|
||||
BenchmarkTransportApplicationRequest/nethttp 2017–2208 ns/op 3091 B/op 34 allocs/op
|
||||
```
|
||||
|
||||
`BenchmarkTransportRouteDispatch` 只覆盖标准库路由、路径参数和 `http.Handler` 调用;`BenchmarkTransportApplicationRequest` 还包含 GoOmni Context、RequestID、统一 JSON 响应和默认中间件链。
|
||||
|
||||
比较新网络层时,应使用相同 Go 版本、机器和 benchmark 命令,并同时运行 `-race` 全量测试。性能下降需要结合分配次数、取消传播、错误响应和业务契约结果一起判断。
|
||||
Reference in New Issue
Block a user