use*_*707 2 performance benchmarking go
我正在练习我的Golang,编写一个简单的Redis克隆.
我如何编写一个基准脚本,在C并发级别每秒建立X连接,以处理我的服务器协议并测量多少操作/秒?
我可以简单地编写一个实际上会执行此操作的脚本:
for i := range(1000) {
// Open connection
// Perform command
// Close connection
}
Run Code Online (Sandbox Code Playgroud)
但我想知道分配每秒并发级别的连接数背后的概念.
这最好由内置testing.Benchmark系统处理.例如,测试用例如:
func BenchmarkHello(b *testing.B) {
for i := 0; i < b.N; i++ {
fmt.Sprintf("hello")
}
}
Run Code Online (Sandbox Code Playgroud)
将自动计算此功能的计时计算.有关设置的更多详细信息,请参阅软件包文档,但如果您之前编写过Go测试用例,则应该非常熟悉.
有关并发基准测试的问题,请参阅RunParallel帮助程序,该程序专门用于协助此操作.
| 归档时间: |
|
| 查看次数: |
247 次 |
| 最近记录: |