课程大纲:
- 优化
- 内存管理优化
- 编译器优化
- 背景
- 自动内存管理和Go内存管理机制
- 编译器优化的基本问题和思路
- 实践: 字节跳动遇到的性能问题以及优化方案
- 需要追求极致性能
- 性能优化是什么?
- 提升软件系统处理能力,减少不必要的消耗,充分发掘计算机算力
- 为什么要做性能优化?
- 用户体验:带来用户体验的提升——让刷抖音更丝滑,让双十一购物不再卡顿
- 资源高效利用:降低成本,提高效率——很小的优化乘以海量机器会是显著的性能提升和成本节约
- 性能优化是什么?
- 自动内存管理
- 动态内存
- 程序在运行时根据需求动态分配的内存:malloc()
- 自动内存管理(垃圾回收)︰由程序语言的运行时系统管理动态内存
- 避免手动内存管理,专注于实现业务逻辑
- 保证内存使用的正确性和安全性: double-free problem, use-after-free problem
个人认识
- 对于现在购物节期间,人们对于购物的需求增加,同时服务器大量地被访问,并发高,
- 此时,优化服务器的性能就显得尤为重要
- 就需要针对对应的服务器做出对应的更为合适的改变