欢迎来到代码驿站!

JAVA代码

当前位置:首页 > 软件编程 > JAVA代码

Spring Cloud Zipkin服务端追踪服务

时间:2021-02-20 09:07:18|栏目:JAVA代码|点击:

Zipkin 简介

ZipKin 是一个开放源代码的分布式跟踪系统,用于收集服务的定时数据,以解决微服务架构中的延迟问题。包括数据的收集、存储、查找和展现。

每个服务向 Zipkin 报告计时数据,Zipkin 会根据调用关系通过 Zipkin UI 生成依赖关系图,显示了多少跟踪请求通过每个服务。该组件可以让我们通过一个 Web 前端轻松的收集和分析数据。例如用户每次请求服务的处理时间等,可方便的监测系统中存在的瓶颈。

服务追踪说明

微服务架构是通过业务来划分服务的,使用 REST 调用。对外暴露的一个接口,可能需要很多个服务协同才能完成这个接口功能。

如果链路上任何一个服务出现问题或者网络超时,都会形成导致接口调用失败。

随着业务的不断扩张,服务之间互相调用会越来越复杂。随着服务的越来越多,对调用链的分析会越来越复杂,如下图:

Zipkin 服务端引入依赖

在 pom.xml 主要添加 zipkin 、 zipkin-server 和 zipkin-autoconfigure-ui 依赖

<dependency>
  <groupId>io.zipkin.java</groupId>
  <artifactId>zipkin</artifactId>
</dependency>
<dependency>
  <groupId>io.zipkin.java</groupId>
  <artifactId>zipkin-server</artifactId>
</dependency>
<dependency>
  <groupId>io.zipkin.java</groupId>
  <artifactId>zipkin-autoconfigure-ui</artifactId>
</dependency>

注意: 这里的 zipkin 版本号为 2.10.1,需要将版本号托管到统一依赖管理项目中

相关配置

在 application.yml 主要添加 zipkin 的相关配置

management:
 metrics:
  web:
   server:
    auto-time-requests: false

在 Application 启动类中通过 @EnableZipkinServer 注解开启 Zipkin Server 功能

@SpringBootApplication
@EnableEurekaClient
@EnableZipkinServer
public class ZipkinApplication {
  public static void main(String[] args) {
    SpringApplication.run(ZipkinApplication.class, args);
  }
}

Spring Cloud Zipkin 客户端

在所需要被追踪的项目中添加以下配置

引入依赖

在 pom.xml 中添加 spring-cloud-starter-zipkin 依赖

<dependency>
  <groupId>org.springframework.cloud</groupId>
  <artifactId>spring-cloud-starter-zipkin</artifactId>
</dependency>

相关配置

在 application.yml 中添加 zipkin 地址即可

spring:
 zipkin:
  base-url: http://localhost:9411

测试服务追踪

启动全部项目,打开浏览器访问:http://localhost:9411 ,出现以下界面

点击 Find a trace,可以看到具体服务相互调用的数据

点击 Dependencies,可以发现服务的依赖关系

上一篇:Kotlin 基础语法详细介绍

栏    目:JAVA代码

下一篇:Java实现调用MySQL存储过程详解

本文标题:Spring Cloud Zipkin服务端追踪服务

本文地址:http://www.codeinn.net/misctech/66509.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有