写点什么

如何快速排查线上 Linux 系统故障?| 极客时间

  • 2019-06-14
  • 本文字数:1199 字

    阅读完需:约 4 分钟

如何快速排查线上 Linux 系统故障?| 极客时间

无论是运维还是开发,和 Linux 打交道、在服务器上分析系统性能是每个技术人的日常。


然而,性能优化也是软件系统中最有挑战的工作之一,就算看了很多资料和书籍,但一旦涉及到解决具体问题,还是会一脸懵逼,比如:


流量高峰期,服务器 CPU 使用率过高报警,你登录 Linux 上去 top 完之后,却不知道怎么进一步定位,到底是系统 CPU 资源太少,还是程序并发部分写得有问题?

系统并没有跑什么吃内存的程序,但在敲完 free 命令之后,却发现已经没什么内存了,到底是哪里占用了内存?为什么?

一大早就收到 Zabbix 告警,你发现某台存放监控数据的数据库主机 CPU 的 I/O Wait 较高,该怎么办?


大多数时候,我们只能看到“症状”,却不知道从哪儿下手排查和解决。之前学习那会儿,我也看了不少书,网上找过些零零散散的资料。


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


1.  掌握性能优化的思路和方法,尝试大量 Linux 性能工具;


2.  从学习到输出,说白了就是不断实践,从实践中总结经验。


这样,你才能把观察到的性能问题跟系统原理关联起来,特别是把应用程序、库函数、系统调用、内核和硬件等不同的层级贯穿起来。



学习这事儿,还是得会抓重点,带着问题学,而不是先啃那些厚厚的原理书,容易把信心压垮。


只要你了解基础系统组件的原理和协作方式,掌握基本的性能指标和工具,熟悉工作中性能优化的常用 tips,就可以比较准确地分析和解决大多数性能问题了。


在此基础上,再阅读那些经典的操作系统书,才会事半功倍。


大概是去年年末那会儿,极客时间出了个《Linux 性能优化实战》专栏,抱着试试看的态度订阅了,平时工作挺忙,最近才陆陆续续追完,感觉收获很大,帮我解决了工作中的一些实际问题。


这两年知识付费泛滥,这个专栏是其中的一股清流了,可以负责地说,这是我在知识付费中收获最大的一门课。


课程大概有 60 讲,讲了 Linux 性能的基本指标、工具,以及相应的观测、分析和调优方法,用实际案例贯穿了从应用程序到操作系统的各个组件。


我看上线也不过几个月,已经有近 2W 人订阅了,截了一些评价,可以参考看看:




作者倪朋飞是微软的 Azure 资深工程师,主要负责开源容器编排系统 Kubernetes 在 Azure 的落地实践。


哥们有着近 10 年的云计算工作经验,不难理解对 Linux 的知识体系有这么深入的理解。


除了内容硬核以外,还有 2 点不得不提:


1、讲解得很成体系,每一章节都有基础篇、案例篇套路篇,选的案例比较有针对性,基本都是工作中用得上的,「套路篇」就更别说了,有好几篇我看了不止一遍。



2、倪朋飞不仅会回答大家提出的问题,还会针对那些有代表性进行公开答疑,确实挺走心。


说真的,光看评论区也能收获不少,自己的认知还是有局限性,有些问题现在没碰到,不等于以后不会出现。


说了半天,看看目录吧:



这个课体量不小,原价 99,现在正在拼团优惠,


戳我参与拼团,立减 20,到手只要 79 元,仅限 24 小时


2019-06-14 10:199040

评论

发布
暂无评论
发现更多内容

华为云FusionInsight MRS:助力企业构建“一企一湖,一城一湖”

华为云开发者联盟

数据库 云原生 数据

电子劳动合同来了 足不出户也能签约

CECBC

社会保险 电子合同

【原创】Spring Boot 集成Spring Data JPA的玩法

田维常

springboot

快速掌握并发编程---关于乐观锁、悲观锁、可重入锁

田维常

并发编程

如何快速构建Spring Boot基础项目?

田维常

spring Boot Starter

【原创】Spring Boot一口气说自动装配与案例

田维常

springboot

偷师Kubernetes源码,学会怎么用Go实现调度队列

网管

Kubernetes 并发编程 并发控制 Go 语言

如何降低young gc时间

AI乔治

Java 架构 GC GC算法

日常工作参数分析

hasWhere

饱受毕设摧残计算机系师兄,怒而分享纯净版SSM框架(附源码)

小Q

Java 学习 面试 开发 SSM框架

量化交易系统开发、自动对冲策略搭建

薇電13242772558

区块链

Spring Boot 集成 Druid 监控数据源

田维常

springboot

Spring Boot 如何快速实现定时任务

田维常

springboot

中国程序员超5000万?一线城市IT岗位已开始饱和过剩?

Java架构师迁哥

第六周学习技术选型2总结

三板斧

架构训练营-week7-学习总结-性能测试,操作系统,锁

于成龙

架构训练营

Github标星35K+超火的Spring Boot实战项目,附超全教程文档

Java架构之路

Java 程序员 架构 面试 编程语言

4年Java经验,去面试居然10分钟就结束了,现在面试为什么这么难?

Java架构之路

Java 程序员 架构 面试 编程语言

轻松使用TensorFlow进行数据增强

计算机与AI

tensorflow 学习 数据增强

浅析一个较完整的SpringBoot项目

田维常

sping

【原创】Spring Boot集成Redis的玩法

田维常

spring Boot Starter

【原创】SpringBoot快速整合Thymeleaf模板引擎

田维常

springboot

登陆!Let's Start Coding

蚂蚁集团移动开发平台 mPaaS

移动开发 mPaaS

【API进阶之路】API带来的微创新,打动投资人鼓励我创业

华为云开发者联盟

学习 视频 API

快速掌握并发编程---ArrayBlockingQueue 底层原理和实战 java

田维常

并发编程 LinkedBlockingQueue

【原创】Spring Boot集成Mybatis的玩法

田维常

springboot

运筹帷幄之后,决胜千里之外!GitHub上标星75k+的《Java面试突击手册》助你拿到满意的offer。

Java架构之路

Java 程序员 架构 面试 编程语言

熟悉又陌生的 k8s 字段:SecurityContext

郭旭东

Kubernetes Kubernetes源码

【原创】SpringBoot 这几种配置文件方式,你都用过吗?

田维常

springboot

美国大选观战感受:用区块链投票吧,少操点心

CECBC

区块链 投票机制

华为云专家私房课:视频传输技术选型的三大法宝

华为云开发者联盟

音视频 视频 传输

如何快速排查线上 Linux 系统故障?| 极客时间_软件工程_倪朋飞_InfoQ精选文章