我如何在Go Meate Ops/sec中编写基准脚本



我正在写一个简单的redis克隆来练习我的golang。

如何编写一个基准脚本,该基准脚本将在C并发级别上每秒建立X连接以处理我的服务器协议并衡量多少OPS/sec?

我可以简单地编写一个实际上可以执行此操作的脚本:

for i := range(1000) {
    // Open connection
    // Perform command
    // Close connection
}

,但我想知道每秒分配每个并发级别的连接数量背后的概念。

这是内置testing.Benchmark系统最好处理的。例如,类似:

的测试用例
func BenchmarkHello(b *testing.B) {
    for i := 0; i < b.N; i++ {
        fmt.Sprintf("hello")
    }
}

将自动为此功能制定定时计算。有关设置的更多详细信息,请参见包装文档,但是如果您以前写了Go Test Case,则应该非常熟悉。

对于您有关并发基准测试的问题,请参阅RunParallel助手,这是专门为此提供帮助的。

相关内容

  • 没有找到相关文章

最新更新