我的程序作为proxy转发来自于后端前端的数据,现在遇到一个问题,我用pprof工具分析得到
![屏幕快照 2016-09-07 下午3.24.54.png](http://studygolang.qiniudn.com/160907/05362ee90ead225328071ef4efba816e.png)
![屏幕快照 2016-09-07 下午3.36.36.png](http://studygolang.qiniudn.com/160907/d0ea8db3315e243f34ebccf0f3cc0f69.png)
syscall 占用了30%左右的CPU开销,
根据GV图主要集中在写的上面
想问问能从什么地方对它进行优化?
底层网络库用的是GO net库
这个和程序没有直接关系,而是涉及到操作系统网络栈的调优了,需要去查一下有没有对应的参数。但是这么做会有个副作用就是导致网络数据延迟处理。
如果你要超时读,可以试试`func (c *TCPConn) SetReadDeadline(t time.Time) error`。
#10
更多评论