可伸缩性的定义
增加系统的资源时(如CPU、内存、存储容量或者I/O带宽等),能够增加程序的吞吐量和系统响应速度。
Amdahl定律
程序中的串行部分比例越高,程序的可伸缩性越低。
锁优化方法
-降低锁的持有时间(快进快出,将非原子操作,且占用时间较长的如I/O操作等代码移出同步代码块)
-降低锁的粒度(锁分解、锁分段)
-使用非占用锁(使用ReadWriteLock、原子变量等)
增加系统的资源时(如CPU、内存、存储容量或者I/O带宽等),能够增加程序的吞吐量和系统响应速度。
程序中的串行部分比例越高,程序的可伸缩性越低。
-降低锁的持有时间(快进快出,将非原子操作,且占用时间较长的如I/O操作等代码移出同步代码块)
-降低锁的粒度(锁分解、锁分段)
-使用非占用锁(使用ReadWriteLock、原子变量等)