老薛读书会

码歌老薛大话Java性能调优,Java调优概述(一)

2019-01-25  本文已影响25人  坑王老薛

老薛读书会

1 第一本书大话java性能调优

书籍简单介绍,今天和大家读的是<span style="color:green">大话java性能调优</span>这本书,IBM技术专家周明耀先生编纂。书籍java基础类库的调优策略->并行程序优化策略->JVM调优监控做了比较系统的解读,如果你也想在编写程序时,有一个很好的全方位把控,我个人还是比较推荐这本图书的。

2 章节介绍

今天和大家介绍的的是性能调优策略概述,本书的第一章节,第一章节主要是让大家管中窥豹,在脑海里构建一个稍微全面一点的关于调优的系统概念。

2-1 第一章知识图谱

知识图谱

2-1-1 为什么调优:

调优目的

1:百万、千万PV访问时如何保证数据一致性?淘宝,12306对于库存数据的一致性要求极高但是如何应对高并发下的性能瓶颈问题?

这里有个例子,为什么奥运会门票票务系统采用抽奖方式?核心还是不需要支持抢购业务,后期只负责手机信息,不保证数据一致性,这样没有并发锁带来的一系列问题,通过水平扩展就可以提高克服性能瓶颈。

2:对于百度等每天访问量很高的业务,如何提高访问速度问题?

为什么前台网站上的很多图片都会加宽度高度,就是为了浏览器解析时能够提高一丢丢效率,当然我们说的缓存等在这里我们暂且不提。

3:如何提高减少编写代码?

比如对于查找1-1000000之间的素数,如何更高效。好的算法和数据结构能够我写更少的代码。更高效的完成业务模型。当然又是我们将简单需求通过很多类层面构建则不再这个考虑范围内,毕竟那是在提高后期扩展性桑考量的,不再一个维度上面

4:CPU如何带动网络资源的这个牛车。

多核多硬件,利用更多的cpu资源做更多的事情,充分压榨cpu的能力。比如缓存,比如异步,比如并行等。目前通过虚拟化打破硬件之间的不可分割障碍,更好的节省成本,提高运维便利,但是同样java应用部署到物理机和虚拟化环境的部署也变相提高了程序员的综合能力。

2-1-2 哪些方向可以让我们调优:

调优方向

I 冯诺依曼结构弊端分析:

冯诺依曼结构的特点

①:总线结构,所有资源通过IO总线链接

②:指令和数据是存储在一起的

解决方案:

II 计算资源瓶颈问题:

计算资源瓶颈

III 衡量指标:

衡量指标

IV 优化的目标:

V 优化策略:

优化策略

注意所有的内容都是基于28法则,大多数80%的资源消耗可以通过改变20%的系统设计或者程序代码而提高。不一定要做的所有的面面俱到。

2-1-3 如何调优:

前端优化 服务器 服务器

最后还有一些架构层面上而言,我们一般将安全作为一个首要指标。
一般情况下我们调优时通过两种途径解决问题,从下而上,自上而下。简单而言自下而上就是从底层硬件配置开始逐渐向上的方式进行分析,查找性能问题,与之相反则就是自下而上。

如果大家也想加入老薛的读书会,请直接私信我即可,或者后台留言回复。

上一篇 下一篇

猜你喜欢

热点阅读