不积跬步无以至千里,后继才能薄发
当硬件性能提升,如cpu提升、内存提升、IO性能提升时,应用程序的处理能力是否会跟随硬件有相应的增加。
开发中需要针对具体需求进行定制,如何以以测试为基准进行优化。
在所有的并发程度中都会有一部分的串行化的任务,如I/O阻塞、对阻塞队列进行读取和写入等
上下文切换
5k-10k个时钟周期,大约几微秒
内存同步
内存栅栏刷新缓存,使得缓存无效的同时也禁止了大部分的指令重排序。
共享内存总线的带宽是有限的,过多的同步会导致总线上的线程陷入瓶颈
JVM在处理线程阻塞时,有两种阻塞策略:自旋、挂起,一般采用挂起,因为通常来说被阻塞的线程不会在短时间内获取到资源。阻塞会导致两次上下文切换和系统操作和缓存操作。
关键:锁的请求频率、每次持有锁的时间
ReadWriteLock
CAS
命令: top
cpu负载不高的原因: