性能基础:定义术语

一则或许对你有用的小广告

欢迎加入小哈的星球 ,你将获得:专属的项目实战 / Java 学习路线 / 一对一提问 / 学习打卡/ 赠书活动

目前,正在 星球 内带小伙伴们做第一个项目:全栈前后端分离博客项目,采用技术栈 Spring Boot + Mybatis Plus + Vue 3.x + Vite 4手把手,前端 + 后端全栈开发,从 0 到 1 讲解每个功能点开发步骤,1v1 答疑,陪伴式直到项目上线,目前已更新了 204 小节,累计 32w+ 字,讲解图:1416 张,还在持续爆肝中,后续还会上新更多项目,目标是将 Java 领域典型的项目都整上,如秒杀系统、在线商城、IM 即时通讯、权限管理等等,已有 870+ 小伙伴加入,欢迎点击围观

当我第一次深入研究 计算机性能 时,我并不完全确定“性能”的含义。当然,我听过很多次这个词,但它通常是一个简单的营销术语。每当有新产品发布时,您一定会在广告的某处找到“性能提升”。好的,但这到底是什么 意思? 我最近开始了一项记录性能基础知识的任务。如果您感到困惑并试图破译计算机性能,请查看以下基本介绍:

计算机性能 由计算机完成的工作与完成所述任务所需的系统资源和时间来定义。因此,计算机性能可以通过以下指标来衡量:

响应时间 ——响应服务请求需要多少时间。它是以下各项的总和:

  • 等待时间:服务请求必须等待多长时间

  • 服务时间:完成请求任务所需的时间长度

  • 传输时间:将请求发送到计算机并发出响应所需的时间

吞吐率 - 处理率

资源利用率 ——处理任务或请求时使用了多少系统资源(IE RAM 使用率、磁盘使用率、CPU 使用率等)

正常运行时间与停机时间 ——系统的可用性,或者基本上可以运行多长时间

带宽 – 比特率容量或信道容量

数据传输时间 ——很简单,物理传输数据(IE HDD、无线等)所需的时间

数据压缩和解压缩率 ——能够以更少的比特编码和解码

指标应该是高或低。 IE,低停机时间是更好性能或高正常运行时间的一个方面。因此,最佳性能意味着:

  • 响应时间短

  • 高吞吐率

  • 低资源使用

  • 停机时间短

  • 高带宽

  • 数据传输时间短

  • 高度紧凑的数据压缩/解压率

一个基本的,但在不太懂技术的用户中很常见,测量是预期的性能:它慢吗?如果您曾经像我一样回答过支持票,您就会知道这是最令人沮丧但最有启发性的陈述之一。不幸的是,虽然说计算机、网站等“速度慢”可能是真的,但它提供了关于根本问题的指示。

计算机性能实际上与其他领域的性能没有什么不同,比如在健身房。它衡量任务的分配和执行速度和效率。如果您正在为马拉松比赛进行训练,您会跟踪各种指标,例如距离、速度和心率。因此,您可以使用各种测试来确定计算机性能。其中一些测试包括:

基准 ——这些是通过运行各种程序来确定性能的测试。传统上,基准测试用于评估硬件(CPU、GPU),尽管它可以用于数据库之类的东西(IE 基准测试用于确定查询需要多长时间)。作为 经常玩游戏的 人,我经常密切关注 基准测试

软件性能测试 ——评估系统在特定工作负载下的执行能力,因此因素将是响应时间/响应度和可扩展性(系统适应资源使用等领域大幅增长的能力)。 IE 负载测试(顾名思义,它测试计算机在特定负载下的能力)和压力测试(查看系统在被推到其能力极限时的行为)。

请继续关注更多性能基础帖子。如果您想了解更多有关性能的特定方面,请发表评论或在 Twitter 上联系我!如果您有兴趣了解有关性能空间的更多信息,请查看我们的 2015 DZone 性能和监控指南