并发程序的性能考量

资源:CPU时钟周期、内存、网络带宽、I/O带宽、数据库请求、磁盘空间以及其他资源。

当操作性能由于某种特定的资源而受到限制时,我们通常将该操作称为资源密集型的操作,例如,CPU密集型操作、数据库密集型操作。对于单核的系统,如果任务是CPU密集型的,那么最优的线程数是1。

性能开销:线程之间的协调(例如加锁、触发信号、内存同步),增加上下文切换,线程创建和销毁,以及线程的调度等。

性能指标:服务响应时间、延迟时间、吞吐量、效率、可伸缩性、容量等。

多快:服务时间

多少:吞吐量

可伸缩性指的是:当增加计算资源时(例如CPU、内存、存储容量、I/O带宽),程序的吞吐量或者处理能力相应地增加。

对服务器来说,吞吐量、可伸缩性往往比响应时间更重要。

参考《Java并发编程实战》

猜你喜欢

转载自blog.csdn.net/Wengzhengcun/article/details/87731759