《Java程序性能优化》第二章 读书笔记 II

常用的优化组件

  • 缓冲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;
  • 空间换时间
    典型应用:缓存。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值