go pool 池化学习、实践总结
概述
最近在业务性能优化过程中,大量使用到了 pool 池化、缓存等技术。在用 pool 的时候一知半解
地怼了上去,待上线过后就得抽时间系统学习、总结一下,于是就有了这篇文章。
首先,我们从一个场景出发,在一个简单的 http 接口服务中,如下:
func handleV1(writer http.ResponseWriter, req *http.Request) {
var (
err error
data []byte
)
// ....
data, err = ioutil.ReadAll(req.Body)
if err != nil {
return
}
// ...... json.Unmarshal 之类的
}
大约 10 分钟