golang 如何优化
16lz
2021-01-22
常见套路:异步、去锁、复用、零拷贝、批量,另外要说避免过早优化、业务逻辑层面的优化要先行
1.cpu耗时优化 (推荐学习:go)
make时提前预估size临时的map、slice采用sync.Pool大于32Kb也可用sync.Pool不滥用goroutine,减少gc压力不滥用mutex,减少上下文切换[]byte与string临时变量转换用unsafe减少reflect、defer使用atomic无锁使用
2.网络io性能优化
批量接口支持http 长连接redis pipelinedb、redis连接池增加缓存大量数据压缩传输
更多相关文章
- Apollo 源码解析 —— Portal 批量变更 Item
- 分布式爬虫的部署之Scrapyd批量部署
- Python小技巧:如何批量更新已安装的库?
- Fabric 源码学习:如何实现批量管理远程服务器?
- Python办公自动化|批量提取Excel数据
- 如何用Python快速优雅的批量修改Word文档样式?
- 教你使用Python批量读写excel文件
- 10 行 Python 代码,批量压缩图片 500 张,简直太强大了
- JavaScript中的执行上下文和堆栈[每日前端夜话(0x0C)]