您当前的位置:首页 > 电脑百科 > 程序开发 > 编程百科

作为程序员,这七大性能指标及监控,你还不知道就OUT了!

时间:2023-04-10 14:41:42  来源:今日头条  作者:程序猿怪咖

 

1 什么是性能指标?

性能指标:任务或系统运行过程中,应用某些评估技术和指标,以评估其运行情况或表现的性能有多好的一种衡量方式。

这里我总结了七个影响最大的指标来衡量系统的性能。

 

2 七大性能指标

2.1 平均负载

对于 平均负载 指标,通常我们用三阶段法来监测:第5分钟、第15分钟、最后一分钟。

当然这个三阶段监测法有一个前提,那就是应用数量必须低于机器的内核数量。很好理解,当你应用数都超过了机器的内核数了,整个服务器处于高压状态运行,自然这个监测方法也没有什么意义了。

通常我们监测服务器,比如从服务器的 CPU 使用情况、内核队列的线程情况。举个简单的例子,如果 CPU 使用率达到了百分百,内核队列只有1个线程任务和又10个线程任务是不同的。因此平均负载不能只考虑服务器 CPU 的使用率。

 

对于 平均负载监测工具,这里推荐使用:htop。

2.2 业务指标

其实很多公司对于应用程序的性能大多归于 应用的响应时间 以及 应用的错误率。其实这样是不正确的,虽然应用的响应时间和错误率也是衡量应用性能的一些标准,实际业务指标也是衡量应用性能的指标之一,比如:应用带来的收益、用户量、交易量等。

 

对于 业务指标监测工具,这里推荐使用:Grafana、The ELK stack、Datadog、Librato。

2.3 GC率和暂停时间

作为JAVA开发者的都知道,JVM有它自己的一些垃圾回收机制,其实垃圾回收器本身的吞吐量和响应时间也会给我们的业务程序的性能带来重要的影响。

因此了解并熟悉JVM的GC的机制原理,通常通过GC的日志文件来分析GC暂停的频率和持续时间,当然还需要JVM参数来作为参考。

同时合理的选用GC回收器以及GC参数配置,也会极大应用的优化性能。

 

对于 GC率和暂停时间监测工具 ,这里推荐使用:jClarity Censum、GCViewer。

2.4 错误率

对于错误率,我们可以从两个方面来判断:

1、根据HTTP传输总失败的百分比来判断错误率。

2、根据HTPPT特定传输的错误率。

因此在实际生产中,绝大多数开发者仅仅根据HTPP传输总失败的百分比来判断错误率是不对的,他们往往会忽略特定传输的错误率,其实对特定传输的错误率监测可以更好的看出你的应用程序运行状况,可以显示出代码方法的具体错误或者异常的次数。

实际在生产中单纯的错误率对我们是没有什么风用处的,顶多说可以拿着数据来分析应用的错误概率。实际上更重要的是从根源上去解决这些错误。

 

对于 错误率监测工具 ,这里推荐使用:Takipi。

可以在 Takipi 的日志文件中找到线索。比如服务器的运行状态【包括堆栈跟踪、源代码和变量值查看】

2.5 响应时间和吞吐量

通常应用程序的接口响应时间就可以大概知道程序完成处理需要的时间,这样就可以对特定的接口业务代码进行优化或者对数据库SQL慢查询优化【一方面走程序层面优化,另一方面可走数据库层面优化】来缩短响应时间。

吞吐量是另一个角度衡量传输数据的指标,是指单位时间内系统处理的客户请求的数量。

因此对于响应时间和吞吐量 指标 我们可以用APMs来衡量,可以在著报告仪表盘中把平均响应时长和历史响应时长进行对比,然后来作为分析的依据。

 

对于 响应时间和吞吐量监测工具 ,这里推荐使用:AppDynamics、New Relic、Ruxit。

可以帮助我们观察新的部署对应用程序有没有什么影响。还可以监测到网络传输的百分比,测量HTTP完成请求需要多长时间。

New Relic 工具的报告,可以监测Web传输百分比和吞吐量。

2.6 日志大小

应该都知道,linux服务发布的应用,它的日志大小会随着时间越长增加的越来越大,如果你的服务器堆满了日志文件,磁盘占用过大,那么服务器运行的性能肯定大打折扣,什么都慢下来了。

对于JAVA程序启动时我们可以设置日志按天打印并打压缩包,对于过于时间长久的日志可以定时迁移到专门的文件存储中去,或者线下管理。

目前通常的解决办法是使用logstash划分使用日志,并将它们发送并存储在Splunk、ELK等日志管理工具中。

 

对于 日志大小监测工具 ,这里推荐使用:Splunk、Sumo Logic、Loggly。

2.7 服务运行状态和正常运行时间

服务运行状态和正常运行时间指标,直接就能奠定我们的应用程序性能的基础,不仅可以当做一个提醒指标,也可以让你定义一段时间内的SKA。

 

通常可以用Pingdom的Servlet功能进行运行状态监测。七种应用的所有传输【如数据库和S3】都可以查看到。

 

对于 服务运行状态和正常运行时间工具 ,这里推荐使用:Pingdom。



Tags:性能指标   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,不构成投资建议。投资者据此操作,风险自担。如有任何标注错误或版权侵犯请与我们联系,我们将及时更正、删除。
▌相关推荐
Linux获取Redis 性能指标方法
一、监控指标Ø 性能指标:PerformanceØ 内存指标: MemoryØ 基本活动指标:Basic activityØ 持久性指标: PersistenceØ 错误指标:Error二、监...【详细内容】
2024-04-11  Search: 性能指标  点击:(2)  评论:(0)  加入收藏
上海启动制定《休闲跑鞋》团体标准 明确规定核心性能指标
中新网上海4月1日电 (记者 陈静)在全民健身背景下,运动健身成为一种流行的生活方式,跑步运动的盛行也带火了以跑鞋为代表的各种跑步装备。记者1日获悉,上海市消保委联合上海市...【详细内容】
2024-04-02  Search: 性能指标  点击:(3)  评论:(0)  加入收藏
Linux常用的性能指标命令
uptimeuptime命令用于显示系统的运行时间和平均负载。0.17,0.14,0.09分别表示系统在1min、5min、15min内的平均负载。数值除以服务器核心数大于5代表CPU负载过高。dmesg | t...【详细内容】
2023-11-20  Search: 性能指标  点击:(202)  评论:(0)  加入收藏
性能监测与优化:实时跟踪应用的性能指标
在现代软件开发中,应用程序的性能是一个至关重要的因素,直接影响用户体验和业务成功。为了确保应用的高性能和稳定性,性能监测与优化成为了不可或缺的环节。本文将深入探讨性能...【详细内容】
2023-09-09  Search: 性能指标  点击:(237)  评论:(0)  加入收藏
作为程序员,这七大性能指标及监控,你还不知道就OUT了!
1 什么是性能指标?性能指标:任务或系统运行过程中,应用某些评估技术和指标,以评估其运行情况或表现的性能有多好的一种衡量方式。这里我总结了七个影响最大的指标来衡量系统的...【详细内容】
2023-04-10  Search: 性能指标  点击:(255)  评论:(0)  加入收藏
服务器性能指标——负载(Load)分析及问题排查
平常的工作中,在衡量服务器的性能时,经常会涉及到几个指标,load、cpu、mem、qps、rt等。每个指标都有其独特的意义,很多时候在线上出现问题时,往往会伴随着某些指标的异常。大部...【详细内容】
2022-04-11  Search: 性能指标  点击:(642)  评论:(0)  加入收藏
CENTOS自动巡检服务器性能指标
服务器性能指标检查分为:检查开始时间: CPU信息: CPU占用TOP 10进程: 内存占用TOP 10进程: 内存信息: TCP连结数: 查看挂载点: 读取磁盘IO信息: 检查网络稳定性: 读取网卡流...【详细内容】
2021-01-05  Search: 性能指标  点击:(588)  评论:(0)  加入收藏
计算机网络的性能指标
性能指标用来从不同的方面度量计算机的性能,下面介绍常用的七个性能指标。1.速率计算机通常要将发送的信息转换成二进制数字来传输,以为二进制数称为一个比特(bit),二进制数字转...【详细内容】
2020-10-19  Search: 性能指标  点击:(358)  评论:(0)  加入收藏
H5页面性能指标解读
H5页面加载过程,主要包括2个部分:H5页面容器加载和资源文件加载。H5页面容器加载过程指标明细如图:对照浏览器window下的Performance的数据指标。H5页面容器加载过程指标明细H5...【详细内容】
2020-07-23  Search: 性能指标  点击:(539)  评论:(0)  加入收藏
一文搞懂高并发性能指标:QPS、TPS、RT、吞吐量
一、QPS,每秒查询QPS:Queries Per Second意思是“每秒查询率”,是一台服务器每秒能够相应的查询次数,是对一个特定的查询服务器在规定时间内所处理流量多少的衡量标准。互联网中...【详细内容】
2019-11-20  Search: 性能指标  点击:(1479)  评论:(0)  加入收藏
▌简易百科推荐
Netflix 是如何管理 2.38 亿会员的
作者 | Surabhi Diwan译者 | 明知山策划 | TinaNetflix 高级软件工程师 Surabhi Diwan 在 2023 年旧金山 QCon 大会上发表了题为管理 Netflix 的 2.38 亿会员 的演讲。她在...【详细内容】
2024-04-08    InfoQ  Tags:Netflix   点击:(0)  评论:(0)  加入收藏
即将过时的 5 种软件开发技能!
作者 | Eran Yahav编译 | 言征出品 | 51CTO技术栈(微信号:blog51cto) 时至今日,AI编码工具已经进化到足够强大了吗?这未必好回答,但从2023 年 Stack Overflow 上的调查数据来看,44%...【详细内容】
2024-04-03    51CTO  Tags:软件开发   点击:(6)  评论:(0)  加入收藏
跳转链接代码怎么写?
在网页开发中,跳转链接是一项常见的功能。然而,对于非技术人员来说,编写跳转链接代码可能会显得有些困难。不用担心!我们可以借助外链平台来简化操作,即使没有编程经验,也能轻松实...【详细内容】
2024-03-27  蓝色天纪    Tags:跳转链接   点击:(13)  评论:(0)  加入收藏
中台亡了,问题到底出在哪里?
曾几何时,中台一度被当做“变革灵药”,嫁接在“前台作战单元”和“后台资源部门”之间,实现企业各业务线的“打通”和全域业务能力集成,提高开发和服务效率。但在中台如火如荼之...【详细内容】
2024-03-27  dbaplus社群    Tags:中台   点击:(9)  评论:(0)  加入收藏
员工写了个比删库更可怕的Bug!
想必大家都听说过删库跑路吧,我之前一直把它当一个段子来看。可万万没想到,就在昨天,我们公司的某位员工,竟然写了一个比删库更可怕的 Bug!给大家分享一下(不是公开处刑),希望朋友们...【详细内容】
2024-03-26  dbaplus社群    Tags:Bug   点击:(5)  评论:(0)  加入收藏
我们一起聊聊什么是正向代理和反向代理
从字面意思上看,代理就是代替处理的意思,一个对象有能力代替另一个对象处理某一件事。代理,这个词在我们的日常生活中也不陌生,比如在购物、旅游等场景中,我们经常会委托别人代替...【详细内容】
2024-03-26  萤火架构  微信公众号  Tags:正向代理   点击:(11)  评论:(0)  加入收藏
看一遍就理解:IO模型详解
前言大家好,我是程序员田螺。今天我们一起来学习IO模型。在本文开始前呢,先问问大家几个问题哈~什么是IO呢?什么是阻塞非阻塞IO?什么是同步异步IO?什么是IO多路复用?select/epoll...【详细内容】
2024-03-26  捡田螺的小男孩  微信公众号  Tags:IO模型   点击:(9)  评论:(0)  加入收藏
为什么都说 HashMap 是线程不安全的?
做Java开发的人,应该都用过 HashMap 这种集合。今天就和大家来聊聊,为什么 HashMap 是线程不安全的。1.HashMap 数据结构简单来说,HashMap 基于哈希表实现。它使用键的哈希码来...【详细内容】
2024-03-22  Java技术指北  微信公众号  Tags:HashMap   点击:(11)  评论:(0)  加入收藏
如何从头开始编写LoRA代码,这有一份教程
选自 lightning.ai作者:Sebastian Raschka机器之心编译编辑:陈萍作者表示:在各种有效的 LLM 微调方法中,LoRA 仍然是他的首选。LoRA(Low-Rank Adaptation)作为一种用于微调 LLM(大...【详细内容】
2024-03-21  机器之心Pro    Tags:LoRA   点击:(12)  评论:(0)  加入收藏
这样搭建日志中心,传统的ELK就扔了吧!
最近客户有个新需求,就是想查看网站的访问情况。由于网站没有做google的统计和百度的统计,所以访问情况,只能通过日志查看,通过脚本的形式给客户导出也不太实际,给客户写个简单的...【详细内容】
2024-03-20  dbaplus社群    Tags:日志   点击:(4)  评论:(0)  加入收藏
站内最新
站内热门
站内头条