4006-998-758
3000+课程任你选择
Linux调优
研发学院 CPU与进程、线程
尹会生

他维护过日活超过 3 亿用户的微博私信平台,搭建过云主机超 5000 台的私有云平台,也为大型游戏的运营构建过大数据分析工具,做过集群和内核调优的培训,也做过嵌入式 Linux 内核的裁剪。实际工作中使用 Python 开发了大数据采集和分析平台,使用Django (Python 语言编写的 Web 框架)实现了公司基础架构统计工具,同时还在使用 Python 与 TensorFlow 进行游戏、大数据、深度学习相结合的研究工作。

曾参与编写 《白话大数据与机器学习》 《运维前线》等书籍。


查看老师详情
课程内容

课程大纲

引言

1. 正确理解调优与服务器性能的关系

2. 不同发行版本下Linux参数差异

 

 

 

 

CPU与进

程、线程

1. Load与CPU使用率的关系

l  使用top、ps观测服务器利用率

2. CPU资源调度

l  进程的运行状态

l  Linux内核的CPU调度策略

3. 计算密集型程序优化

l  计算密集型程序的特点

l  计算密集型程序的优化策略

l  虚拟CPU与物理CPU直接的映射关系

l  虚拟机间CPU资源共享的策略

4. 进程与/proc目录

l   /proc目录结构

l   通过/proc实现进程状态的监控

l  ulimit、终端与进程的关系

 

 

内存管理

1. 内存资源监控工具的使用

l  使用vmstat、free命令进行内存监控

2. Buffer和Cache的产生及监控

l  Buffer和Cache的产生机制

l  Buffer和Cache的监控方法

3. 内存管理与优化

l  Linux内存管理机制

l  内存优化策略

l  JVM如何进行内存的使用

4. 使用大页优化虚拟机内存访问效率

l   大页(HugePages)的使用方法

l   TLB(Translation Lookaside   Buffer)miss率的监控

5. Swap与内存读写压测

l   Swap的使用策略

l   内存读写压测方法

 

 

 

 

磁盘I/O

1. Linux执行可执行文件的过程

l   文件、文件系统到数据块的理解

l   Linux如何执行一个可执行文件

2. I/O资源管理工具的使用

l   使用iostat命令进行I/O监控

3. 固态磁盘与机械磁盘的差异

l   固态磁盘与机械磁盘的性能比较

l   固态磁盘与机械磁盘的使用场景

4. I/O调度算法的差异

l   不同I/O调度算法的特性

l   如何选择合适的I/O调度算法

5. 虚拟化场景下I/O优化常见策略

l   I/O性能优化的基本策略

l   使用虚拟化存储技术(如Virtio)优化I/O性能

6. I/O密集型应用的任务拆分及并发解决方案

l   I/O密集型应用的任务拆分策略

l   并发技术在I/O密集型应用中的应用

 

 

 

 

 

 

网络I/O

1. 网络I/O资源监控

l   使用netstat命令进行网络I/O监控

2. 网卡多队列机制与网络瓶颈优化

l   网卡多队列机制的理解

l   网络瓶颈的识别与优化

3. Socket连接与断开的内核参数调整

l   Socket连接与断开对应的内核参数

l   内核参数的观测与调整方法

4. HTTP协议与DNS链路监控与问题发现

l   从用户到服务器的链路监控方法

l   链路问题的识别与解决

5. 虚拟机配置优化

l   使用高效的虚拟机硬件模型

6. 网络吞吐量和响应时间对网络性能的影响

l   不同内核参数对网络性能的影响

l   网络性能的优化策略

7. CPU、I/O、内存、网络I/O之间的相互作用与影响

l   网卡中断的处理机制

l   网卡中断对CPU的影响

l   不同资源之间的相互作用

l   不同资源对系统性能的影响

8. sysctl参数的调整方法

9. 综合案例

l   MySQL参数设置导致I/O性能瓶颈的案例分析

l   MySQL性能优化策略


返回上一级