java并发编程:性能与可伸缩性

来源:互联网 发布:mysql存储过程 编辑:程序博客网 时间:2024/05/18 13:44

可伸缩性的定义

增加系统的资源时(如CPU、内存、存储容量或者I/O带宽等),能够增加程序的吞吐量和系统响应速度。

Amdahl定律

程序中的串行部分比例越高,程序的可伸缩性越低。

锁优化方法

-降低锁的持有时间(快进快出,将非原子操作,且占用时间较长的如I/O操作等代码移出同步代码块)
-降低锁的粒度(锁分解、锁分段)
-使用非占用锁(使用ReadWriteLock、原子变量等)

1 0