Java程序性能优化-概述

前言
    这两天在看《Java程序性能优化》这本书,将我学到的书上好的东西分享给大家。做过开发的人应该或多或少都碰到过性能问题,遇到性能问题你是怎么做的呢?你能看懂程序的性能吗?本篇给大家讲下如何看懂程序的性能及性能的参考指标。

正题

程序性能的表现方式:

1.执行速度:程序的反映是否迅速,响应时间是否足够短。
执行速度可以受到多方面的影响,比如逻辑写的有问题,查询数据量大,网络问题等等。

2.内存分配:内存分配是否合理,是否过多地消耗内存或者存在泄漏。
要根据程序的运行情况及服务器内存大小合理分配内存,分配过小,容易造成内存溢出,分配过大,容易浪费并且导致机器运行变慢。

3.启动时间:程序从运行到可以正常处理业务需要花费多长时间。
不要把所有的东西都进行预加载,适当的使用懒加载机制,不然用户还没看到你的程序页面就已经走了。

4. 负载承受能力:当系统压力上升时,系统的执行速度、响应时间的上升曲线是否平缓。
在此可使用相关检测工具来检查负载承受能力。


性能的参考指标:

1.执行时间:一段代码从开始运行到运行结束,所使用的时间。

2.CPU时间:函数或者线程占用CPU的时间。

3.内存分配:程序在运行时占用的内存空间。

4.磁盘吞吐量:描述I/O的使用情况。

5.网络吞吐量:描述网络的使用情况。

6.相应时间:系统对某用户行为或者事件做出响应的时间。响应时间越短,性能越好。

系统瓶颈
由于每个应用特点不同,故系统瓶颈不同,但是常见的系统瓶颈的计算资源有:

1.磁盘I/O:由于磁盘I/O读写速度比内存慢很多,所以如果程序中要等待磁盘I/O完成再做其他事情,那么磁盘I/O会成为系统的瓶颈。

2.网络操作:由于网络环境的不确定性,如果要对网络数据进行读写,则可能比磁盘I/O更慢。

3.CPU:如果程序长时间、不间断地大量占用CPU资源,那么对CPU的争夺将导致性能问题,此时则需要改写程序来改善这种情况。

4.异常:对Java应用来说,异常的捕获和处理是非常消耗资源的。如果高频率地进行异常处理,则性能会有明显的下降。

5.数据库:一般程序都离不开数据库,但是如果海量数据的读写操作则会很耗时。

小结:
  在了解了性能的基本概念之后,随后会继续分享我们平时性能调优的层次。
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
提供的源码资源涵盖了安卓应用、小程序、Python应用和Java应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码中配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行课程实践、课外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创业过程中,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码中的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值