发现使用net / http包的响应时间在OSX和Linux之间是不同的。基本上,OSX比Linux慢。当我调用内部域访问时,效果尤其显着。 OSX慢10倍以上...它可能来自随时随地进行编译,但不确定。有人知道为什么会发生这种差异吗?
OSX:10.11
Linux:centos-7.0-64,它在mac的VM上运行
main.go
package main
import (
"log"
"net/http"
"time"
)
func main() {
url := "http://yahoo.co.jp"
start := time.Now()
resp, _ := http.Get(url)
log.Println(time.Since(start))
defer resp.Body.Close()
}
结果(可用性)
-OSX:233.662409ms
-Linux:147.108599ms
最佳答案
内部VIP访问速度降低了10倍,所以我没有说。我尝试与其他客户端(例如curl和ruby)一起使用,发现OSX的time_namelookup速度非常慢。因此,这不是语言,而是DNS缓存(如Mac上的函数问题)。我会寻找细节。谢谢提供信息!
Go版本:1.5.1 darwin / amd64
关于linux - OSX和Linux之间的net/http打包速度不同,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33795828/