《Java程序性能优化》第二章 读书笔记 II
其他
2020-04-18 14:34:03
阅读次数: 0
常用的优化组件
- 缓冲Buffer
原理:采用漏斗 解释得很形象
应用:IO的BufferedWriter等 NIO的Buffer类族都是典型的代表
- 缓存(Cache)
原理:缓存的主要作用就是暂存数据处理结果,并提供下次访问使用。
应用:内存的一级Cache/二级Cache/三级Cache。
专门的Cache解决方案:Memcache、Redis等
- 对象复用——“池”
原理:如果一个类别频繁请求使用,那么不必每次都生成一个实例,可以将这个类的一些实例保存在一个“池”中,待需要使用的时候直接从池中获取。
应用:线程池和数据库连接池。省去了频繁创建和销毁的开销。
常用的优化方法
- 并行代替串行
- 负载均衡
原理:多台计算机协同工作,将系统负载尽可能均匀地分配到各个计算机节点上。
应用:硬件级负载均衡F5,软件负载均衡LVS/nginx、Apache,Tomcat集群。
扩展:Terracotta。分布式缓存的框架。使用Terracotta可以实现Tomcat的Session共享。
- 时间换空间
由于系统资源是有限的,为了在有限的资源内,达成某些特定的性能目标,就需要使用时间换空间或空间换时间的方法。
应用:a/b变量交换
a=a+b;
b=a-b;
a=a-b;
- 空间换时间
典型应用:缓存。
发布了37 篇原创文章 ·
获赞 9 ·
访问量 19万+
转载自blog.csdn.net/zzyymaggie/article/details/78848674