Linux优化不知如何下手?那你的看看这篇文章了

枫铃3年前 (2021-06-26)Python245

这些问题或者场景,你是否曾经遇到过?

  • 流量高峰期,服务器CPU使用率过高报警,你登录Linux上去top完之后,却不知道怎么进一步定位,到底是系统CPU资源太少,还是程序并发部分写的有问题?
  • 系统并没有跑什么吃内存的程序,但是敲完free命令之后,却发现系统已经没有什么内存了,那到底是哪里占用了内存?为什么?
  • 一大早就收到Zabbix告警,你发现某台存放监控数据的数据库主机CPU的I/O Wait较高,这个时候该怎么办?
    作为一个程序员,性能优化是无法避开的事情,不管是桌面应用还是web应用,不管是前端还是后端,不管是单点应用还是分布式系统,并且性能优化也是软件系统中最有挑战的工作之一,更是每个工程师都需要掌握的核心技能。

但是在实际的工作中,很多情况下只能看到症状,却完全不知道该从哪儿下手去排查和解决它。

之前有读者问过到,胖哥有没有系统学习Linux性能优化的书籍推荐?

网上的资料和书籍可以扩充底层知识体系,从虚拟化的原理、到操作系统和网络原理、再到Linux内核和硬件驱动程序等等。

但是Linux性能优化是个系统工程,除了基础知识点之外,学习中还有两点是比较重要的:

第一、要学习大量性能优化的思路和方法,尝试大量的Linux性能工具。

第二、要不断的实践和总结。这样你才能把观察到的性能问题跟系统原理关联起来,特别是把系统从应用程序、库函数、系统调用、再到内核和硬件等不同的层级贯穿起来。
在这里插入图片描述
对于我们大多数人来说,最好的学习方式一定是带着问题学习,而不是先去啃那几本厚厚的原理书籍,这样容易把自己的信心压垮。我认为,学习要会抓重点,只要你了解少数几个系统组件的基本原理和协作方式,掌握基本的性能指标和工具,学习实际工作中性能优化的常用技巧,你就已经可以准确分析和优化大多数的性能问题了。

在这个认知和基础上,再反过来去阅读那些经典的操作系统或者其它图书,你才能事半功倍。

相关文章

python 判断变量是否是 None 的三种写法

代码中经常会有变量是否为...

Python atexit模块

atexit模块介绍 作用:让注册的函数在解释器正常终止时自动执行,可以注册多个函数,所注册的函数会逆序执行&#x...

python 中有趣的库tqdm

Tqdm 是 Python 进度条库,可以在 Python 长循环中添加一个进度提示信息用法:tqdm(iterator) 方法...

urllib库添加headers的一般方法

对于请求一些网站,我们需要加上请求头才可以完成网页的抓取,不然会得到一些错误,无法返回抓取的网页。下面,...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。