微信号:jnby1978

介绍:SpringSide,江南白衣的Java后端开发,唯品会基础架构,微服务实践的日常.

Java性能优化指南 ,及唯品会的实战(修订版)

2016-10-27 19:48 江南白衣

来了唯品会一年多,不少时间花在与服务化框架、业务应用的性能的缠斗上。

前几天正好趁着中生代社区的十月十城技术沙龙,把脑海中关于性能优化的记忆全部理了一遍....讲完回家,又本着认真严谨的态度再理了一遍,终于成为现在这份66页的PPT

各位客官,1.4版内容略有增减,超链接也已修好,请阅读原文重新下载。

范围

应用性能,受操作系统参数,三方类库选择,数据库查询,甚至压测工具如JMeter本身调优的影响。

本次分享只着重在三方面:

  • JVM的调优

  • 代码的调优

  • 定位性能问题的工具


基本原则

网上如此多新旧不一的资料,这么多肆意传播亦真亦错的观点,怎么办呢?

  1. 多看一些靠谱的资料,问一些靠谱的人。

  2. 怀疑一切,微基准测试一切,诚意推荐JMH。

  3. 看JDK代码,看一切代码。


JVM优化

首先,JIT入门知识;然后,JVM参数的简介;再然后,最头痛的GC问题的处理。


代码优化

代码优化,两大方向一是面向GC的编程,二是并发与锁,然后再来聊聊其他。


问题定位工具集

黑盒调优是最不可靠的,推荐线下用JMC,线上用Btrace定位问题。


特别鸣谢

感谢 R大 , 日常三更半夜跨洋热心解答各种JVM问题。

感谢Chembo(国钦),对PPT的美化。


完整PPT下载

请点击“阅读原文”


这份PPT花了我颇多时间,比写晋升材料还认真。
所以,会有同学扫描一下这二维码,打赏两块五鼓励一下吗?



 
春天的旁边 更多文章 服务化之-路由 一份平民化的应用性能优化CheckList(完整篇) 服务化框架-分布式Unique ID的生成方法一览 Java同学,日常翻看的网站与公众号 关键业务系统的JVM参数推荐(2016热冬版)
猜您喜欢 ENode框架使用场景简述 深入浅出Cache 推荐系统技术之文本相似性计算(三) tvOS 入门:开发你的第一个 tvOS 应用