影响软件性能的因素(二)
根据应用的不同,任何计算机资源都有可能成为应用的瓶颈,但是有一些是比较常见的:
一 : 磁盘 I/O
磁盘的读写速度远慢于内存的读写速度,系统运行是如果需要等待磁盘I/O的完成,将导致整个系统的性能下降;
二: CPU性能
应用对CPU的占用时间不同,应用间对CPU的抢占也将导致系统性能受到影响;
三: 网络状态
网络本身存在不确定性,其读写速度可能比磁盘I/O还要慢,所以网络状态也可能成为系统性能的一个瓶颈;
四:异常的处理
java对异常的捕获和处理是一项非常消耗资源的操作。
五:数据库读写
当应用可能进行海量数据的读写时,数据库操作将带来想不到的时间消耗,可能影响整个系统的响应;
六:锁竞争
在高并发的程序中,对锁的竞争必将产生很大的上下文切换开销,对系统造成的性能影响也是不可小觑的;
七:负载承受能力
一个应用可能同时会接收到上百万的访问请求,这时应用将面临巨大的响应压力,可能导致服务器宕机;
八:内存大小
有时候内存过小可能导致一些操作无法完成,导致系统崩溃;这时也可能为了解决内存不足问题采用分步加载资源到内存中,这有导致了磁盘I/O问题;
这篇文章讲的也挺详细的关于影响软件系统性能的因素总结。
每天一点点,感受自己存在的意义。