1.性能测试
响应时间、并发数、吞吐量(TPS每秒处理的事务数,QPS每秒处理的查询数)、性能计数器(服务器的负载、内存、cpu等的使用情况)
响应时间 也不一定要通过技术手段优化,也可以通过优化业务交互和用户体验来优化
性能测试是性能优化的前提和基础,也是性能优化结果的检查和度量标准。不同视角下的网站有不同的标准,也有不同的优化手段。
响应时间
指应用系统从发出请求开始到收到最后响应数据所需的时间(从发出第一个字节开始标记开始,从收到最后一个字节后标记结束)。响应时间直观反映了系统的“快慢”。
并发数
系统能够同时处理请求的数目,这个数字也反映了系统的负载特性。对于网站而言,并发数即系统并发用户数,指同时提交请求的用户数目,于此相对应,还有在线用户数(当前登录系统的用户数)和系统用户数(可能访问系统的中用户数)。
吞吐量
指单位时间内系统处理的请求数,体现系统的处理能力。对于网站,可以用“请求数/秒”或“页面数/秒”来衡量,也可以用“访问人数/天”或是“处理的业务数/小时”等来衡量。(通常以秒为单位)
TPS(每秒事务数)也是吞吐量的一个指标,此外还有HPS(每秒HTTP请求数),QPS(每秒查询数)等。
吞吐量=(1000/响应时间ms)* 并发数
2.锁
锁原语CAS
偏向锁、轻量级锁、重量级锁
总线锁与缓存锁
公平锁、非公平锁
可重入锁
独享锁/互斥锁、共享锁、读写锁
乐观锁、悲观锁
分段锁(JDK ConcurrentHashMap)
自旋锁