
课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
监控功能的应用在许多的软件开发项目中都是经常会见到的一个编程功能,而本文我们就通过案例分析来了解一下,监控功能的应用都有哪些常见类型。
1、系统监控
先说相对比较简单的系统监控,一般系统监控关注如下指标:
CPU负载
内存使用率
磁盘使用率
网络带宽占用
2、JVM监控
JMX提供了关于JVM的大部分核心信息,启动时设置参数,支持远程访问JMX,之后即可通过接入JMX来实时读取JVM的CPU、内存等信息。
3、服务监控
服务监控主要指接口的状态监控。服务监控关注如下指标:
QPS:每秒请求数,对于使用容器的系统,包括ApacheTomcat,Resin,JBoss等,可以从AccessLog中采集到每个接口的QPS。没输出AccessLog的系统,考虑通过Annotation来规范输出访问计数。当然,这个指标还可以细分为每秒成功请求数、失败请求数、总请求数等。
请求响应时间:在服务器端监控每个接口的响应时间。简单做法是在方法执行前后打时间戳计算,对于HTTP请求,也可以从accesslog中获取接口执行时间。当然也可以用annotation来实现统一的执行时间监控。
执行异常数:指程序运行过程中发生的未捕获处理的异常,一般是对场景考虑不周导致的异常发生,比如空指针、错误参数、数据访问等的异常。这些异常一旦发现,需要修复代码逻辑。异常在应用日志中一般都会把错误堆栈打印出来。
4、数据库监控
数据库是大部分应用的核心和瓶颈,对其监控尤其必要。监控可以在应用侧执行,也可以在数据库服务器上做。前者通过应用代码中打印日志来实现,或者直接override链接池中相关方法来统一输出日志。
在数据库服务器上执行监控,需要根据数据库的特点分别设计方案。以MySQL为例,可以通过监控其binlog来获取执行的sql语句以及执行时间。
数据库监控重点关注如下指标:
每秒请求数QPS
慢查询处理数
SQL语句执行时间
5、调用链监控
调用链监控指在微服务系统中,跟踪一个请求从发起到返回,在各个相关系统中的调用情况。
【免责声明】本文系本网编辑部分转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与管理员联系,我们会予以更改或删除相关文章,以保证您的权益!更多内容请加danei0707学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。