当前位置: 首页 > 科技观察

Java程序员必须知道的7个性能指标

时间:2023-03-12 22:33:50 科技观察

在本文中,小编收集了7个最具影响力的度量注解,让你不依赖日志文件也能了解应用。现在,让我们看看这些性能指标,看看如何查看和收集它们:1.响应时间和吞吐量应用程序的响应时间告诉您程序完成数据传输需要多长时间。也可以从HTTP请求层面来看,或者从数据库层面来看。对于那些慢查询,你需要做一些优化来减少时间。吞吐量是传输数据的另一种衡量标准,它是指单位时间内系统处理的客户端请求数。我们可以使用NewRelic或AppDynamics等APM来衡量这些指标。使用这些工具,您可以在主报告仪表板中直接将平均响应时间与昨天甚至上周的响应时间进行比较。这有助于我们观察新部署是否影响我们的应用程序。您可以看到网络传输的百分比,衡量HTTP完成请求所需的时间。推荐工具:AppDynamicsNewRelicRuxitNewRelic报告:Web传输百分比和吞吐量2.平均负载第二个广泛使用的指标是平均负载。我们习惯把平均负载分为这三个步骤来衡量,分别是第5分钟、第15分钟和最后1分钟。确保数量小于机器的核心数。一旦超过核心数量,机器就会承受压力。除了简单地测量CPU使用率之外,您还需要关注每个内核的队列中有多少进程。当核心使用率都为100%时,队列中只有1个任务和有6个任务之间存在很大差异。所以,loadaverage不能只考虑CPU的使用率。推荐工具:htop3。错误率大多数开发人员根据HTTP传输失败总数的百分比来判断错误率。但他们忽略了更深层次的东西:特定传输的错误率。这直接影响应用程序的运行状况。这可以显示代码方法中的错误以及错误或异常发生的次数。但是纯粹的错误率数据对我们帮助不大。最重要的是我们找到他们的根源并解决问题。随着Takipi的运行,我们在日志文件中寻找线索。您可以找到有关服务器状态的所有信息,包括堆栈跟踪、源代码和变量值。推荐工具:Takipi4.GC速率和暂停时间异常行为垃圾收集器应用程序吞吐量和响应时间是进行深入研究的主要原因之一。了解GC暂停的频率和持续时间的关键是分析GC日志文件。要分析它们,您需要收集GC日志和JVM参数。您应该注意不同指标之间的数据如何相互影响。推荐工具:jClarityCensumGCViewer5.业务指标应用程序的性能并不完全取决于响应时间和错误率。业务指标也是一方面,比如营收、用户数等。推荐工具:GrafanaELKstackDatadogLibrato6.正常运行时间和服务运行状态等指标为整个应用的性能打下了基础。它不仅可以用作提醒指标,还可以让您定义一段时间内的SKA。我们可以使用Pingdom的servlet功能进行健康检查。我们可以检查应用程序的所有传输,包括数据库和S3。推荐工具:Pingdom7.日志大小日志有一个缺点,它总是在增加。当您的服务器开始被垃圾堵塞时,一切都会变慢。因此,我们需要密切关注日志大小。目前通常的解决方案是使用logstash将使用日志进行划分,发送存储到Splunk、ELK或其他日志管理工具中。推荐工具:SplunkSumoLogicLoggly