java开发的软件响应时间要求_Java程序员必须清楚的7个性能
指标
java可以开发什么软件本⽂中,⼩编搜集了7个最有影响的衡量标注,让你可以不依赖⽇志⽂件来了解应⽤程序。现在,让我们看看这些性能指标,并了解如何查
看并收集它们:
1.响应时间和吞吐量
根据应⽤程序的响应时间可以知道程序完成传输数据所⽤的时间。也可以从HTTP请求级别,或者成为数据库级别来看。对那些缓慢的查询你需要做⼀些优化来缩短时间。吞吐量是另⼀个⾓度衡量传输数据的指标,是指单位时间内系统处理的客户请求的数量。
我们可以使⽤APMs(例如New Relic或AppDynamics)来衡量这些指标。使⽤这些⼯具,你可以在主报告仪表板中将平均响应时间与昨天的甚⾄上周的直接进⾏对⽐。这有助于我们观察新的部署是否会影响到我们的应⽤程序。你可以看到⽹络传输的百分⽐,测量HTTP完成请求需要多长时间。你也可以看看这篇:⽹站性能测试指标(QPS,TPS,吞吐量,响应时间)详解。
推荐⼯具:
AppDynamics
New Relic
Ruxit
New Relic报告:Web传输百分⽐和吞吐量
2.平均负载
第⼆个应⽤⼴泛的指标是平均负载。我们习惯上会把平均负载分为这三步测量,分别是第5分钟、第15分钟和最后1分钟。要保证数量低于机器的内核数。⼀旦超过内核数,机器就会运⾏在压⼒状态下。
除了简单测量CPU使⽤率,还需要关注每个内核的队列中有多少进程。在内核使⽤率都是100%的情况下,队列中只有1个任务和有6个任务有很⼤不同。因此,平均负载不能只考虑CPU使⽤率。
推荐⼯具:
htop
3.错误率
⼤多数开发⼈员判断错误率是根据HTTP传输总失败百分⽐。但是他们忽略了⼀个更深层的东西:特定传输的错误率。这直接影响到您应⽤程序的运⾏状况。这可以显⽰出代码⽅法的错误以及错误或异常出现的次数。
但单纯的错误率数据对我们没有多⼤帮助。最重要的是我们要到它们的根源并解决问题。随着Takipi的运⾏,我们要在⽇志⽂件中需线索。你可以到所有关于服务器状态的信息,包括堆栈跟踪、源代码和变量值。
推荐⼯具:
Takipi
4.GC率和暂停时间
异常⾏为垃圾收集器应⽤程序的吞吐量和响应时间采取深潜的主要原因之⼀。了解GC暂停频率和持续时间的关键是分析GC⽇志⽂件。要分析它们,你需要收集GC⽇志和JVM参数。你要注意观察不同指标之间的数据是如何相互影响的。
推荐⼯具:
jClarity Censum
GCViewer
5.业务指标
应⽤程序的性能不完全取决于响应时间和错误率。业务指标也是⼀⽅⾯,例如收益、⽤户数。
推荐⼯具:
Grafana
The ELK stack
Datadog
Librato
6.正常运⾏时间和服务运⾏状态
这⼀指标奠定了整个应⽤程序性能的基础。不仅可以当做⼀个提醒指标,也可以让你定义⼀段时间内的SKA。我们可以使⽤Pingdom的servlet功能进⾏运⾏状态检查。我们可以查到应⽤程序的所有传输,包括数据库和S3。你也可以看看这篇:SLA服务可⽤性4个9是什么意思?怎么达到?
推荐⼯具:
Pingdom
7.⽇志⼤⼩
⽇志有⼀个缺点,它是⼀直在增加的。当您的服务器启动塞满了垃圾,⼀切都慢下来。因此,我们需要密切的关注⽇志⼤⼩。
⽬前通常的解决办法是使⽤logstash划分使⽤⽇志,并将它们发送并存储在Splunk、ELK或其他的⽇志管理⼯具中。
推荐⼯具:
Splunk
Sumo Logic
Loggly
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论