性能工程高手课
庄振运
Facebook性能优化和容量管理高级专家
立即订阅
2337 人已学习
课程目录
已更新 33 讲 / 共 36 讲
0/4登录后,你可以任选4讲全文学习。
开篇词 (1讲)
开篇词 | 代码不要眼前的苟且,而要效率的提升和性能的优化
免费
开篇:认识代码性能和系统容量效率 (3讲)
01 | 程序员为什么要关心代码性能?
02 | 程序员也要关心整个系统和公司成本吗?
03 | 导读:专栏是怎么设计的?需要哪些知识?
性能定律和数理基础 (5讲)
04 | 性能工程三定律:IT业和性能优化工作的“法律法规”
05 | 概率统计和排队论:做性能工作必须懂的数理基础
06 | 性能数据的分析:如何从大量数据中看出想要的信号?
07 | 性能数据的展示:一图胜千言,说出你的数据故事
08 | 经验总结:必须熟记的一组常用性能数字
性能测试 (5讲)
09 | 性能测试的种类:如何快准狠地抓住一个测试的本质?
10 | 性能测试的规划和步骤:为什么性能测试不容易一蹴而就呢?
11 | 性能测试的工具:七大测试场景如何选择高质量的测试工具?
12 | 九条性能测试的经验和教训:如何保证测试结果可靠且可重复?
13 | 性能测试的工程集成:如何与产品开发和运维业务有机集成?
性能分析 (5讲)
14 | 性能分析概述:性能问题归根结底是什么原因?
15 | CPU篇:如何让CPU的运行不受阻碍?
16 | 内存篇:如何减少延迟提升内存分配效率?
17 | 存储篇:如何根据性能优缺点选择最合适的存储系统?
18 | 网络篇:如何步步拆解处理复杂的网络性能问题?
性能优化 (6讲)
19 | 性能优化六大原则:三要三不要,快速有效地进行优化
20 | 性能优化十大策略:如何系统地有层次地优化性能问题?
21 | CPU案例:如何提高LLC(最后一级缓存)的命中率?
22 | 系统案例:如何提高iTLB(指令地址映射)的命中率?
23 | 存储案例:如何降低SSD峰值延迟?
24 | 跨层案例:如何优化程序、OS和存储系统的交互?
性能工程实践 (5讲)
25 | 如何在生产环境中进行真实的容量测试?
26 | 怎么规划和控制数据库的复制延迟大小?
27 | 多任务环境中的Java性能问题,怎样才能不让程序互相干扰?
28 | 网络数据传输慢,问题到底出在哪了?
29 | 如何彻底发挥SSD的潜力?
容量规划与服务效率 (3讲)
30 | 服务器的管理和部署:工业界近几年有哪些发展趋势?
31 | 规划部署数据中心要考虑哪些重要因素?
32 | 服务的容量规划:怎样才能做到有备无患?
性能工程高手课
登录|注册

24 | 跨层案例:如何优化程序、OS和存储系统的交互?

庄振运 2020-01-20
你好,我是庄振运。
我们前面几讲介绍了性能优化的原则和策略,并且集中探讨了 CPU、内存和存储三个最关键的领域。
今天我们来讲一个比较复杂的 JVM 场景和超大延迟的性能问题;这是本模块,也就是性能优化模块的最后一讲。
我们会一步步地探讨这个性能问题的表象、问题的重现、性能分析的过程和解决方案。这个性能问题的复杂性,表现在它牵扯了计算机技术的很多层次——从最上层的应用程序,到中间层 JVM 的机制,再到操作系统和文件系统的特性,最后还涉及到硬件存储的特点。
更重要的是,这几个层次互相影响,最后导致了平时我们不容易看到的严重性能问题——非常大的 JVM 卡顿。
今天我会把问题的核心和分析过程阐述清楚,而对于其他的一些背景和更多的性能数据,你可以参考我发表在IEEE Cloud上的论文。

生产环境下偶尔很大的响应延迟是怎么回事?

我们先来看看这个性能问题的表象:就是在生产环境中,偶尔会出现非常大的响应延迟。
由于大多数互联网业务都是面向在线客户的(例如在线游戏和在线聊天),所以,确保客户相应的低延迟非常重要。各种研究也都表明,200 毫秒延迟,是多数在线用户可以忍受的最大延迟。因此,确保低于 200 毫秒(甚至更短)的延迟,已经成为定义的 SLA(服务水平协议)的一部分。
取消
完成
0/1000字
划线
笔记
复制
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
该试读文章来自付费专栏《性能工程高手课》,如需阅读全部文章,
请订阅文章所属专栏。
立即订阅
登录 后留言

精选留言(2)

  • 吴帆
    这个性能优化案例非常有代入感,讲解的十分详细,感谢庄老师的分享

    作者回复: 谢谢!

    2020-02-03
  • 黄海峰
    听的过程打算问怎么把gc日志和其他io分开,看到最后发现这是个思考题。。。老师后面会搞个思考题汇总解答吗

    作者回复: 哦,这个问题的答案其实就是JVM的一个参数 -Xloggc:<gc-log-file-path>。
    也不奇怪,如果没有使用过这个参数,的确不知道它的存在。
    思考题汇总解答也是个好主意,我们考虑一下。谢谢建议。

    2020-01-20
收起评论
2
返回
顶部