Java Spring Boot 2.0性能监控实战与Actuator机制解析

本文涉及的产品
云解析 DNS,旗舰版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
全局流量管理 GTM,标准版 1个月
简介: Java Spring Boot 2.0 性能监控 实战与 Actuator 机制解析: 内容摘要:应用程序性能监控和日志采集管理是非常重要问题,Java Spring Boot网站、API等应用程序如何进行远程性能监控、日志采集,远程控制,本次课程一起深入学习Actuator新特性与API机制。
内容摘要:应用程序性能监控和日志采集管理是非常重要问题,Java Spring Boot网站、API等应用程序如何进行远程性能监控、日志采集,远程控制,本次课程一起深入学习Actuator新特性与API机制。APM是分布式系统运维非常重要的知识点,开源社区许多经典的分布式性能监控方案。
Java Spring Boot2.0不进允许性能监控,还可以进行远程控制。功能十分强大。

1、 APM = Application Performance Management 采集指标
      目的是监控和管理应用软件性能和可用性。通过监控和诊断复杂应用程序的性能问题,来保证分布式系统的良好运行。
   
2、Java Spring Boot 性能监控 指标多维度
34a37ab2d683d7f896855ca3319668d654fcf80e
Spring Boot 2014年4月性能监控和管理组件Actuator 。 
使用HTTP Endpoint或JMX,运行状态指标数据收集
health, metrics, info, dump, env, etc
2.0以后改进监控地址带有/actuator前缀
例如/actuator/health监控健康状态信息
禁用management.endpoint.shutdown.enabled=true
单个禁用
management.endpoints.enabled-by-default=false
management.endpoint.info.enabled=true


3、Java Spring Boot 2.0性能监控新特性 
   Java Spring Boot 2.0内置性能监控Endpoint,可以直接配置使用

内置EndPoint ID

描述

默认启用

auditevents

暴露审计事件信息

Yes

beans

Beans列表

Yes

caches

缓存信息

Yes

conditions

评估配置的条件信息

Yes

configprops

显示 @ConfigurationProperties列表

Yes

env

环境信息

Yes

flyway

Flyway 数据掐你一信息

Yes

health

健康信息

Yes

httptrace

显示HTTP 跟踪信息(默认最近100 HTTP请求应答).

Yes

info

显示程序信息

Yes

integrationgraph

集成图Spring Integration graph.

Yes

loggers

显示与修改日志信息

Yes

liquibase

Liquibase 数据库迁移信息

Yes

metrics

显示‘metrics指标信息

Yes

mappings

显示@RequestMapping路径列表

Yes

scheduledtasks

显示调度任务

Yes

sessions

查询和删除会话Spring Session-backed session store. 不支持reactive web applications.

Yes

shutdown

优雅地关闭应用

No

threaddump

执行线程Dump thread dump.

Yes

 这些Endpoint 都可以在配置文件里打开或者关闭,
4、实战 Actuator性能监控
 创建一个 java Spring Boot 2.0项目,然后添加Actuator依赖,
<dependency>
  <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-security</artifactId>
</dependency>
启动项目,访问http://localhost:8080/actuator/可以查看默认的监控Endpoint端点列表。
9e56c91b03e389b34456d0c9c56fb819832901ff
5、安全保护
Spring Boot Actuator集成Spring Security安全框架,可以直接配置使用,也可以代码方式,最简单的Form表单验证、Basic验证例子如下:
management.security.enabled = true
management.security.roles = ADMIN
security.basic.enabled = true
security.user.name = frankxulei
security.user.password = alibaba

6、视频课程
7、高级面试题
  •  APM架构
  • 监控指标
  • 监控框架
  • Actuator底层实现
  • Micrometer优势
  • 配置文件参数
  • 能不能监控TOMCAT
  • 数据库、NoSQL数据库监控实现机制
8、Micrometer性能采集器
Micrometer是多维度指标收集器,语言中立的API。

通过类路径和配置,可以支持多系统导出数据,集成框架!
Spring Boot 2 Actuator中包含的指标收集工具。 
Spring Boot 1.5,1.4和1.3支持,额外依赖项。
Micrometer为Spring Boot 1中counters和gauges增强功能。
例如, Micrometer Timer能够生成吞吐量,总时间,最近样本的最大延迟,预先计算的百分位数,百分位柱状图相关的时间序列。 和SLA边界计数。
支持更多的监控工具如Prometheus, Datadog, Wavefront, SignalFx, Influx, etc
Spring Boot 2强化特性 
阿里巴巴Java群2200多人,
直播地址:Java技术进阶群
进群方式:钉钉扫码入群
C926B5D9_9BC2_4452_B14E_7F2F506EDAF9

目录
相关文章
|
11天前
|
Java 开发者 微服务
Spring Boot 入门:简化 Java Web 开发的强大工具
Spring Boot 是一个开源的 Java 基础框架,用于创建独立、生产级别的基于Spring框架的应用程序。它旨在简化Spring应用的初始搭建以及开发过程。
27 6
Spring Boot 入门:简化 Java Web 开发的强大工具
|
11天前
|
Java 编译器
Java 泛型详细解析
本文将带你详细解析 Java 泛型,了解泛型的原理、常见的使用方法以及泛型的局限性,让你对泛型有更深入的了解。
24 2
Java 泛型详细解析
|
12天前
|
缓存 监控 Java
Java线程池提交任务流程底层源码与源码解析
【11月更文挑战第30天】嘿,各位技术爱好者们,今天咱们来聊聊Java线程池提交任务的底层源码与源码解析。作为一个资深的Java开发者,我相信你一定对线程池并不陌生。线程池作为并发编程中的一大利器,其重要性不言而喻。今天,我将以对话的方式,带你一步步深入线程池的奥秘,从概述到功能点,再到背景和业务点,最后到底层原理和示例,让你对线程池有一个全新的认识。
40 12
|
9天前
|
存储 算法 Java
Java内存管理深度解析####
本文深入探讨了Java虚拟机(JVM)中的内存分配与垃圾回收机制,揭示了其高效管理内存的奥秘。文章首先概述了JVM内存模型,随后详细阐述了堆、栈、方法区等关键区域的作用及管理策略。在垃圾回收部分,重点介绍了标记-清除、复制算法、标记-整理等多种回收算法的工作原理及其适用场景,并通过实际案例分析了不同GC策略对应用性能的影响。对于开发者而言,理解这些原理有助于编写出更加高效、稳定的Java应用程序。 ####
|
9天前
|
存储 监控 算法
Java虚拟机(JVM)垃圾回收机制深度解析与优化策略####
本文旨在深入探讨Java虚拟机(JVM)的垃圾回收机制,揭示其工作原理、常见算法及参数调优方法。通过剖析垃圾回收的生命周期、内存区域划分以及GC日志分析,为开发者提供一套实用的JVM垃圾回收优化指南,助力提升Java应用的性能与稳定性。 ####
|
11天前
|
Java 数据库连接 开发者
Java中的异常处理机制:深入解析与最佳实践####
本文旨在为Java开发者提供一份关于异常处理机制的全面指南,从基础概念到高级技巧,涵盖try-catch结构、自定义异常、异常链分析以及最佳实践策略。不同于传统的摘要概述,本文将以一个实际项目案例为线索,逐步揭示如何高效地管理运行时错误,提升代码的健壮性和可维护性。通过对比常见误区与优化方案,读者将获得编写更加健壮Java应用程序的实用知识。 --- ####
|
24天前
|
监控 Java 应用服务中间件
高级java面试---spring.factories文件的解析源码API机制
【11月更文挑战第20天】Spring Boot是一个用于快速构建基于Spring框架的应用程序的开源框架。它通过自动配置、起步依赖和内嵌服务器等特性,极大地简化了Spring应用的开发和部署过程。本文将深入探讨Spring Boot的背景历史、业务场景、功能点以及底层原理,并通过Java代码手写模拟Spring Boot的启动过程,特别是spring.factories文件的解析源码API机制。
64 2
|
2月前
|
缓存 Java 程序员
Map - LinkedHashSet&Map源码解析
Map - LinkedHashSet&Map源码解析
72 0
|
2月前
|
算法 Java 容器
Map - HashSet & HashMap 源码解析
Map - HashSet & HashMap 源码解析
57 0
|
2月前
|
存储 Java C++
Collection-PriorityQueue源码解析
Collection-PriorityQueue源码解析
64 0