Spring-Cloud-Zipkin-05

前言

1、链路追踪由来:在微服务框架中,一个由客户端发起的请求在后端系统中会经过多个不同的服务节点调用来协同产生最后的请求结果,每一个请求都会开成一条复杂的分布式服务调用链路,链路中的任何一环出现高延时或错误都会引导起整个请求最后的失败(不建议微服务链路调用超过3次)

2、分布式链路调用的监控:sleuth+zipkin(zipkin就是一个可视化的监控控制台)。Zipkin是Twitter的一个开源项目,允许开发者收集Twitter各个服务上的监控数据,并提供查询接口。该系统让开发者可通过一个Web前端轻松的收集和分析数据,例如用户每次请求服务的处理时间等,可方便的检测系统中存在的瓶颈。

1、下载zipkin

下载地址:https://repo1.maven.org/maven2/io/zipkin/zipkin-server/2.14.1/,选择第一个即可

Spring-Cloud-Zipkin-05_第1张图片

2、运行zipkin

下载下来jar包后,在下载好的目录上输入cmd命令,打开命令提示符,然后输入java -jar zipkin-server-2.14.1-exec.jar,后面jar包名称要与自己下载的版本名一致。

运行完后,我们可以查看到这个服务的端口为9411

此时我们就可以在浏览器上输入http://localhost:9411/zipkin/来查看服务了,只不过没有数据

Spring-Cloud-Zipkin-05_第2张图片

3、案例说明

这里我们就不重新搭建openFeign项目了,直接使用:Spring-Cloud-Feign-03这里演示的时候创建的项目,进行使用演示

Spring-Cloud-Zipkin-05_第3张图片

记得先启动项目,访问接口查看项目是否可以正常运行,可以正常发起远程调用服务

Spring-Cloud-Zipkin-05_第4张图片

4、导入依赖

order-a和user-a服务都需要导入以下依赖

<dependency>
    <groupId>org.springframework.cloudgroupId>
    <artifactId>spring-cloud-starter-zipkinartifactId>
dependency>

5、修改配置文件

order-a和user-a服务都需要在application.xml里添加以下配置

spring:
  application:
    name: user-a
  # 加到spring下面,添加如下配置即可
  zipkin:
    base-url: http://localhost:9411
  sleuth:
    sampler:
      probability: 1 # 配置采样率,默认的采样比例为:0:1,即10%,所设置的值介于0-1之间,1则表示全部采集
      rate: 10 # 为了使用速率限制采样器,选择每秒间隔接收的trace量,最小数字为0,最大值为2,147,483,647(最大int) 默认为10

6、启动访问,远程调用

修改完配置文件后,要重启两台服务,然后再次在浏览器上发起几次远程调用

如果有找不到order-a服务的异常,可以先看看注册在eureka上了没有,如果都注册上了,就等一会,让他拉取一下服务再测试即可

7、查看监控

正常调用过后,我们就可以访问http://localhost:9411/地址查看,记得先点击查找,才能找到

Spring-Cloud-Zipkin-05_第5张图片

我们也可以点下面,点进去,查看具体信息

Spring-Cloud-Zipkin-05_第6张图片

8、调用步骤

Spring-Cloud-Zipkin-05_第7张图片

9、IDEA快捷查看

通过idea软件可以快捷查看项目内所有api的一个接口请求,并且可以快速定位,下面演示使用方法

9.1、没有配置的项目

下面只能看到Actuator目录下 Beans选项卡里面的内容,Healh、Mappings下所有内容皆是不可看的

Spring-Cloud-Zipkin-05_第8张图片

9.2、配置完的项目

配置过后的项目,三个皆可查看当前项目的信息,包括依赖包内的所有api

你可能感兴趣的:(spring,java,spring,boot)