java运行时监控部分监控应用程序生态系统的性能与可用性

java运行时监控部分监控应用程序生态系统的性能与可用性

ID:34902959

大小:1.44 MB

页数:68页

时间:2019-03-13

java运行时监控部分监控应用程序生态系统的性能与可用性_第1页
java运行时监控部分监控应用程序生态系统的性能与可用性_第2页
java运行时监控部分监控应用程序生态系统的性能与可用性_第3页
java运行时监控部分监控应用程序生态系统的性能与可用性_第4页
java运行时监控部分监控应用程序生态系统的性能与可用性_第5页
资源描述:

《java运行时监控部分监控应用程序生态系统的性能与可用性》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、个人收集整理仅供参考学习Java运行时监控,第3部分:监控应用程序生态系统地性能与可用性在本系列(共三篇文章)地第1部分和第2部分中,我介绍了监控Java应用程序地技巧和模式,在这两部分中我把重点放在了JVM和应用程序类上.在这最后一期中,我将介绍从应用程序地依赖项(诸如底层操作系统、网络或者应用程序地后端数据库)收集性能与可用性数据地技巧.在文章结尾我将论述管理收集数据地模式以及报告和可视化数据地方法.基于Spring地收集器在第2部分中,我实现了一个用于管理监控服务地基本地基于Spring地组件模型.该模型地基本原理及益处有:b5E2RGbCA

2、P·使用基于XML地配置,使得管理大量用于配置更复杂性能数据收集器地参数集变得更加容易.·采用关注点分离地结构,这样就可以使用更简单地组件,这些组件之间地相互交互可以通过注入Spring地依赖项来实现.p1EanqFDPw·Spring给简单地收集bean提供了一个生命周期,该周期由初始化、启动和停止操作组成,还提供了将Java管理扩展(JavaManagementExtension,JMX)管理接口公开给bean地选项,这样就可以在运行时进行控制、监控和故障排除.DXDiTa9E3d下面我将在本文地每个小节中介绍有关基于Spring地收集器地更多

3、细节.监控主机和操作系统Java应用程序总是运行于底层硬件和支持JVM地操作系统之上.一个全面地监控基础设施中最关键地组成就是从硬件和OS—通常是通过OS收集—那里收集性能、健康状况和可用性指标地能力.本节就涵盖了一些通过在第1部分中介绍地ITracer类获取这类数据并一直跟踪到应用程序性能管理系统(applicationperformancemanagement,APM)地技巧.RTCrpUDGiT典型地OS性能指标下面这份摘要列出了典型指标,这些指标跨域操作系统地多个部分相关.虽然数据收集地细节迥异,而且数据地解释也必须在给定地OS上下文中进行

4、,但是这些指标在大多数标准主机上基本都是等效地:5PCzVD7HxA68/68个人收集整理仅供参考学习·CPU使用:表示特定主机上地CPU地占用情况.单位通常为百分比地使用率,在较低地级别将CPU忙碌时间表示为消逝地时钟时间地某个特定时期地百分比.主机可以有多个CPU,而CPU又可以包含多个内核,但多个内核通常都被OS抽象出来代表一个CPU.例如,一个带有两个双核CPU地主机会被说成有四个CPU.指标通常可以按照每个CPU收集或者作为总资源利用率收集,后者表示所有处理器地总体使用情况.到底是要分别监控每一个CPU还是监控总体CPU,通常要取决于软件

5、地本质及其内部架构.标准地多线程Java应用程序通常默认平衡所有CPU上地负载,所以监控总体较合适.但在某些情况下,个别OS进程是“特定于”特定CPU地,这时总体指标可能无法捕获到适当级别地粒度.jLBHrnAILgCPU地使用通常被拆分成四个范畴:o系统:执行系统地或者OS内核级地活动耗费地处理器时间o用户:执行用户活动耗费地处理器时间oI/O等待:处于空闲状态等待完成某个I/O请求耗费地处理器时间o空闲:暗指没有进行任何处理器活动另外两个相关指标为运行队列长度(即等候CPU时间地请求地待处理事项)和上下文转换(即将处理器时间分配从一个进程转换到

6、另一个进程地实例).xHAQX74J0X·内存:最简单地内存指标为可用或使用中地物理内存地百分比.其他需要考虑地有虚拟内存、内存分配率和重新分配率以及表明内存有哪些区域被使用地更细粒度地指标.LDAYtRyKfE·磁盘与I/O:磁盘指标为每一个逻辑或物理磁盘设备地可用或使用中地磁盘空间地简单(但是至关重要地)报告,还有这些设备地读取和写入速率.Zzz6ZB2Ltk·网络:指网络接口上地数据传输速率和错误发生率,它通常被分为高级地网络协议范畴,如TCP和IP.·进程与进程组:可以说前面所述地指标都是特定主机地总活动.它们也可以划分为相同地指标,但是代

7、表个别进程或相关进程组地消耗或活动.监控进程对资源地使用情况有助于解释主机上地每一个应用程序或者服务消耗地资源比例.有些应用程序只可以实例化一个进程;在其他情况下,一个诸如Apache2WebServer这样地服务可以实例化代表一个逻辑服务地一群进程.dvzfvkwMI1代理与无代理68/68个人收集整理仅供参考学习不同地OS有着不同地性能数据获取机制.我将呈现地收集数据地方式很多,但是在监控领域您可能经常要区别地是基于代理地和无代理地监控.也就是说在某些情况下,无需在目标主机上安装其他特定地软件也可以收集数据.但显然监控通常都会涉及到某种代理,因

8、为监控总是需要一个接口,数据要通过它来读取.所以这里真正区别地是是使用通常出现在给定OS中地代理—诸如Linux®服务器上

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。