发现使用net / http包的响应时间在OSX和Linux之间是不同的。 OSX基本上比Linux慢。特别是当我调用内部域访问时,结果非常显着。 OSX的速度超过10倍......它可能来自go编译,但不确定。任何人都知道为什么会出现这种差异?
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()
}
结果(avarage)
- OSX:233.662409ms
- Linux:147.108599ms
答案 0 :(得分:0)
内部VIP访问速度慢了10倍,所以我没说。我尝试与其他客户端做curl和ruby,发现OSX的time_namelookup非常慢。所以,它不是语言,而是像mac上的功能问题一样的DNS缓存。我会寻找细节。谢谢你的信息!
go version:1.5.1 darwin / amd64