性能优化工作概论
- 需要非常广泛的背景知识,最好是经验丰富的程序员,具备性能调优经验。
- 存储: HBA, iSCCI, NAS
- 网络:基础的交换机配置,懂七/四层协议
- 服务器:了解服务器构成,电源/主板
- LAMP,JVM:基础配置,调优,懂内核中的各个模块原理
- 会脚本语言,利用好各种语言方便自己的开发
- C/C++:基础
- Bash/Python/Perl:基础
- PHP/HTML:简单的C/S网页应用
- JS: 简单的JS脚本
- Java:会写简单的应用,懂JVM的基本参数
- 懂体系架构,看得懂硬件的SPEC
- 能画出X86系统的几个基础构件
- CPI/PL:基础,PPW
- TLB:如何工作
- hello, world 是如何工作的(instruction level)
- 方法学
- 性能优化是一个不断循环进化的过程:收集数据->发现瓶颈->优化->收集数据…
- 数据可以分成三个层次
- Application:各种benchmark报告的分数
- System:系统收集到的设备使用率,如CPU%, IO
- Micro Arch:Cache/TLB的miss
- 如何去分析数据:data driven。看scaling的时候数据表现是否正常。
No comments:
Post a Comment