SpringBoot实战(十六):集成Skywalking调用链监控系统

本文涉及的产品
云拨测,每月3000次拨测额度
简介: SpringBoot实战(十六):集成Skywalking调用链监控系统

强烈推荐一个大神的人工智能的教程:http://www.captainai.net/zhanghan


【前言】


      Skywalking做为生产级的调用链监控工具,不仅提供了丰富的监控系统,而且通过字节码拦截形式集成系统,对系统没有任何侵入性;最近研究一下调用链项目,在此与大家共享;


【集成调用链】


        一、Skywalking的github项目地址:


                GitHub - apache/skywalking: APM, Application Performance Monitoring System


        二、Skywalking监控的服务端启动:


                1、从github中下载压缩包;


                2、解压进入bin目录;


                3、startup.bat(Windows系统) 或 startup.sh(Linux系统)启动;


                4、访问http://localhost:8080/ (在此以本地为例)


d9fed9dafeb8b66d5bdb8045f1847487_watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly96aGFuZ2hhbi5ibG9nLmNzZG4ubmV0,size_16,color_FFFFFF,t_70.png


        三、Skywalking监控的客户端集成:


                1、在此以本人的springboot项目为例;


                     (1)地址:GitHub - dangnianchuntian/springboot: springboot


                     (2)代码版本:1.6.0-Release


                2、启动命令(以agent的方式加载对程序无任何侵入性)


java -javaagent:/path/to/skywalking-agent/skywalking-agent.jar -jar yourApp.jar
//Windows本地启动为例
java -javaagent:D:\\apache-skywalking-apm-6.4.0\\apache-skywalking-apm-bin\\agent\\skywalking-agent.jar -jar zh-boot.jar

                3、通过swagger访问项目:


904b1fbd9a12ac725bc9a3987d7fc2fc_watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly96aGFuZ2hhbi5ibG9nLmNzZG4ubmV0,size_16,color_FFFFFF,t_70.png


                4、从skywalking服务端查看:


                     (1)仪表盘


                              A.整体---看到一共发了多少次请求,接入的组件的数量(支持组件查看安装目录中apache-skywalking-apm-bin\agent下的jar)


2d46e8b1c7432527887c2ce792ca84f8_watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly96aGFuZ2hhbi5ibG9nLmNzZG4ubmV0,size_16,color_FFFFFF,t_70.png


                              B.服务细粒度指标---平均时延,平均吞吐量等


d39af9a69acf68b94c37b017aff6f89a_watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly96aGFuZ2hhbi5ibG9nLmNzZG4ubmV0,size_16,color_FFFFFF,t_70.png


                              C.端点---端点维度查看平均时延,平均吞吐量,慢端点排行榜


08e98a4065f5068e1c04373790284022_watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly96aGFuZ2hhbi5ibG9nLmNzZG4ubmV0,size_16,color_FFFFFF,t_70.png


                              D.实例---实例维度查看响应时间,吞吐量,内存信息


da57a52581489caf20c21718e3a504ed_watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly96aGFuZ2hhbi5ibG9nLmNzZG4ubmV0,size_16,color_FFFFFF,t_70.png


                     (2)拓扑图---看到项目拓扑


7de2b94be37a7ea50af581766b822e27_watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly96aGFuZ2hhbi5ibG9nLmNzZG4ubmV0,size_16,color_FFFFFF,t_70.png


                     (3)追踪---每个请求的耗时明细


c3fbc3e901f855a42e9ae1849c06b2a1_watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly96aGFuZ2hhbi5ibG9nLmNzZG4ubmV0,size_16,color_FFFFFF,t_70.png


【总结】


        做为生产级项目,相关监控是必不可少的;监控可以让我们直观实时的知道项目运行的情况,为项目后续的优化提供重要的参考指标。


相关文章
|
1天前
|
前端开发 Java 应用服务中间件
从零手写实现 tomcat-08-tomcat 如何与 springboot 集成?
该文是一系列关于从零开始手写实现 Apache Tomcat 的教程概述。作者希望通过亲自动手实践理解 Tomcat 的核心机制。文章讨论了 Spring Boot 如何实现直接通过 `main` 方法启动,Spring 与 Tomcat 容器的集成方式,以及两者生命周期的同步原理。文中还提出了实现 Tomcat 的启发,强调在设计启动流程时确保资源的正确加载和初始化。最后提到了一个名为 mini-cat(嗅虎)的简易 Tomcat 实现项目,开源于 [GitHub](https://github.com/houbb/minicat)。
|
1天前
|
NoSQL Java MongoDB
【MongoDB 专栏】MongoDB 与 Spring Boot 的集成实践
【5月更文挑战第11天】本文介绍了如何将非关系型数据库MongoDB与Spring Boot框架集成,以实现高效灵活的数据管理。Spring Boot简化了Spring应用的构建和部署,MongoDB则以其对灵活数据结构的处理能力受到青睐。集成步骤包括:添加MongoDB依赖、配置连接信息、创建数据访问对象(DAO)以及进行数据操作。通过这种方式,开发者可以充分利用两者优势,应对各种数据需求。在实际应用中,结合微服务架构等技术,可以构建高性能、可扩展的系统。掌握MongoDB与Spring Boot集成对于提升开发效率和项目质量至关重要,未来有望在更多领域得到广泛应用。
【MongoDB 专栏】MongoDB 与 Spring Boot 的集成实践
|
1天前
|
消息中间件 JSON Java
RabbitMQ的springboot项目集成使用-01
RabbitMQ的springboot项目集成使用-01
|
1天前
|
搜索推荐 Java 数据库
springboot集成ElasticSearch的具体操作(系统全文检索)
springboot集成ElasticSearch的具体操作(系统全文检索)
|
1天前
|
消息中间件 Java Spring
Springboot 集成Rabbitmq之延时队列
Springboot 集成Rabbitmq之延时队列
6 0
|
1天前
|
网络协议 Java Spring
Springboot 集成websocket
Springboot 集成websocket
11 0
|
1天前
|
XML Java 数据库
springboot集成flowable
springboot集成flowable
|
1天前
|
安全 Java 数据库连接
在IntelliJ IDEA中通过Spring Boot集成达梦数据库:从入门到精通
在IntelliJ IDEA中通过Spring Boot集成达梦数据库:从入门到精通
|
1天前
|
缓存 NoSQL Java
springboot业务开发--springboot集成redis解决缓存雪崩穿透问题
该文介绍了缓存使用中可能出现的三个问题及解决方案:缓存穿透、缓存击穿和缓存雪崩。为防止缓存穿透,可校验请求数据并缓存空值;缓存击穿可采用限流、热点数据预加载或加锁策略;缓存雪崩则需避免同一时间大量缓存失效,可设置随机过期时间。文章还提及了Spring Boot中Redis缓存的配置,包括缓存null值、使用前缀和自定义过期时间,并提供了改造代码以实现缓存到期时间的个性化设置。
|
1天前
|
消息中间件 Java Kafka
Springboot集成高低版本kafka
Springboot集成高低版本kafka

热门文章

最新文章

http://www.vxiaotou.com