蓝梦

在学习过程中,笔者一直强调系统化思维,啥叫系统化思维,简单的来讲就是点、线、面的打通。

比如数据库索引调优是一个点;数据库性能优化就是一条线,可以涉及到很多内容;而一个平台的性能优化可以理解为一个面。由点及线,由线到面,形成系统化的思考框架。

再比如大家知道互联网架构的一些常用手段,比如异步化、无状态化等,如果要回答稳定性设计,则需要有体系化的思考,从研发过程看有事前(分析设计、编码测试)、事中(监控、发现能力、止血)、事后(总结改进)等,从是否有损层面区分为无损和有损等。

对于很多研发人员来说,Java 性能调优都是很头疼的问题,为什么这么说?如今,一个简单的系统就囊括了应用程序、数据库、容器、操作系统、网络等技术,线上一旦出现性能问题,就可能要你协调多方面组件去进行优化。另外,很多性能问题隐藏得很深,可能因为一个小小的代码,也可能因为线程池的类型选择错误…

如何轻松搞定 Java 性能调优呢?笔者很认可金山软件西山居技术经理刘超的观点,他根据自己的实战经验,把 Java 性能调优分成 5 个层级:Java 编程、多线程、JVM 性能检测、设计模式、数据库性能,每个层级下都覆盖了最常见的优化问题。下面分别给你梳理一下:

第 1 层:Java 编程性能调优

JDK 是 Java 语言的基础库,熟悉 JDK 中各个包中的工具类,可以帮助你编写出高性能代码。课程从基础的数据类型讲起,涉及容器在实际应用场景中的调优,还有现在互联网系统架构中比较重要的网络通信调优。
第 2 层:多线程性能调优

目前大部分服务器都是多核处理器,多线程编程的应用广泛。为了保证线程的安全性,通常会用到同步锁,这会为系统埋下很多隐患;除此之外,还有多线程高并发带来的性能问题,这些都会在这个层级重点讲解。
第 3 层:JVM 性能监测及调优

Java 应用程序是运行在 JVM 之上的,对 JVM 进行调优可以提升系统性能。这个层级重点讲解 Java 对象的创建和回收、内存分配等。

第 4 层:设计模式调优

在架构设计中,我们经常会用到一些设计模式来优化架构设计。这里刘超会结合一些复杂的应用场景,分享设计优化案例。
第 5 层:数据库性能调优

数据库最容易成为整个系统的性能瓶颈,这里刘超会重点解析一些数据库的常用调优方法。
另外,对于 Java 性能优化,不仅要理解系统架构、应用代码,还需要关注 JVM 层甚至操作系统底层。有时候,深入理解 Java 底层源码就能达到事半功倍的效果。除了上面提到的问题,性能调优还遵循一些通用的原则,比如说按需优化、二八原则、创建性能测试套件等等。

Java性能调优全攻略来了相关推荐

  1. java 性能调优_Java性能调优调查结果(第一部分)

    java 性能调优 我们在2014年10月进行了Java性能调优调查.该调查的主要目的是收集对Java性能世界的见解,以改善Plumbr产品. 但是,我们也很高兴与您分享有趣的结果. 我们收集的数据为 ...

  2. Java性能调优调查结果(第一部分)

    我们在2014年10月进行了Java性能调优调查.该调查的主要目的是收集对Java性能世界的见解,以改进Plumbr产品. 但是,我们也很高兴与您分享有趣的结果. 我们收集的数据为进行冗长的分析提供了 ...

  3. 阿里教科书式Java性能调优笔记

    前言 Java由于其简单.面向对象.安全等特点,广泛的应用在各种应用领域,但在很多情况下,Java的运行性能仍有待提高. 优化Java的运行性能已成为当前业界迫切要解决的问题和当前的一个热点.比如你要 ...

  4. 强推!阿里教科书式Java性能调优笔记,竟让GitHub程序员集体叫好

    前言 Java由于其简单.面向对象.安全等特点,广泛的应用在各种应用领域,但在很多情况下,Java的运行性能仍有待提高. 优化Java的运行性能已成为当前业界迫切要解决的问题和当前的一个热点.比如你要 ...

  5. java性能调优实战学习笔记

    这是极客时间专栏<java性能调优实战>的部分学习笔记,个人感觉这个专栏内容不深,适合初学者,我只看了编程性能调优和数据库性能调优两块,其他的暂时不打算看了,后续有时间再看吧 有任何问题可 ...

  6. 面试怕被问“后端优化”问题?看看这套java性能调优手册吧!

    对于很多研发人员来说,Java 性能调优都是很头疼的问题. 比如,一个简单的系统就囊括了应用程序.数据库.容器.操作系统.网络等技术,线上一旦出现性能问题,就可能要你协调多方面组件去进行优化.另外,很 ...

  7. 为什么对 Java 性能调优最后都像在调 you?

    不知道你有没有发现,优化Java,或者任何其他语言的代码性能经常被当做是一种暗黑艺术. 性能分析有种神秘感.画面类似是这样的:一个「黑客」经过多年练就的手艺,能够快速深入了解某个系统,并提出神奇的解决 ...

  8. 11 个简练的 Java 性能调优技巧

    转载自 11 个简练的 Java 性能调优技巧 想要让你的项目一直高性能运作吗?以下有一些技巧你可以拿去消除缓存瓶颈,还有一些其他的性能调优建议. 大多数开发者认为性能优化是一个复杂的话题,它需要大量 ...

  9. java 性能调优_Java性能调优调查结果(第四部分)

    java 性能调优 这是本系列中的最后一篇文章,我们将分析我们在2014年10月进行的Java Performance Tuning Survey的结果.如果您尚未阅读第一篇文章,建议您首先阅读以下内 ...

  10. java 性能调优_Java性能调优调查结果(第三部分)

    java 性能调优 这是本系列文章的第三篇,我们将分析2014年10月进行的调查的结果.如果您尚未这样做,我建议从本系列的前两篇文章开始: 问题严重性分析和监视域分析 . 这篇文章着重于故障排除/根本 ...

最新文章

  1. php大商创 安装,大商创X2020最新纯净服务器安装教程
  2. android怎么监听多点触摸_110寸高清触摸一体机
  3. 1的恢复出厂设置在哪里_无线路由器怎么恢复出厂设置
  4. kafka修改分区数_Kafka笔记
  5. 分布式ID-百度(uid-generator)
  6. 分析一下shell(转)
  7. VD车辆检测常用方法
  8. [Java基础]final和static修饰符
  9. HTTPS之SSL处理过程,对此加密和非对称加密
  10. StringBuffer类的功能
  11. C++复数运算 重载
  12. 【codevs2370】小机房的树,RMQ求LCA
  13. [转载] python中numpy库的使用举例
  14. 荣耀总裁赵明揭秘华为薪酬制度:不看资历,只看贡献
  15. 《火星救援》中的科学与不科学
  16. vscode中文注释斜体修改
  17. Ubuntu下安装星际译王
  18. 三相SVPWM逆变器MATLAB仿真实验,三相SVPWM逆变电路MATLAB仿真
  19. 基于PL/SQL的数据库备份方法
  20. 九、cadence ic 5141 ——反相器版图绘制

热门文章

  1. 算法分析与设计:棋盘覆盖问题(分治法)
  2. 【chromium cdm 模块源码分析】
  3. Python进行高斯积分(Gaussian integral)
  4. 数据库可视化工具——HeidiSQL
  5. 安装版tomcat tomcat6w.exe参数配置
  6. 常用电阻E24,E96阻值速查
  7. 线性代数学习指导与MATLAB编程实践,21世纪高等理工科重点课程辅导丛书:线性代数学习指导与MATLAB编程实践...
  8. Android -- WiFi的NUD检测机制浅析
  9. Flask实现个人博客系统(附源码)
  10. 如何通过企业微信做精细化社群运营