微服务学习笔记十一 Spring Cloud Zipkin服务跟踪

本文涉及的产品
注册配置 MSE Nacos/ZooKeeper,118元/月
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
云原生网关 MSE Higress,422元/月
简介: 微服务学习笔记十一 Spring Cloud Zipkin服务跟踪

Spring Cloud Zipkin

Zipkim是一个可以采集并且跟踪分布式系统中请求数据的组件,让开发者可以更加

直观的监控到请求在各个微服务所耗费的时间等,Zipkin:Zipkin Server、Zipkin Client,

**创建Zipkin server**

创建一个maven工程,pom.xml


```yaml

<dependencies>

   <dependency>

       <groupId>io.zipkin.java</groupId>

       <artifactId>zipkin-server</artifactId>

       <version>2.9.4</version>

       <exclusions>

           <exclusion>

               <groupId>org.apache.logging.log4j</groupId>

               <artifactId>log4j-slf4j-impl</artifactId>

           </exclusion>

       </exclusions>

   </dependency>

   <dependency>

       <groupId>io.zipkin.java</groupId>

       <artifactId>zipkin-autoconfigure-ui</artifactId>

       <version>2.9.4</version>

   </dependency>

</dependencies>

```



创建配置文件 application.yml


```yaml

server:

 port: 9090

```


创建启动类


```java

package com.shuang;


import org.springframework.boot.SpringApplication;

import org.springframework.boot.autoconfigure.SpringBootApplication;

import zipkin.server.internal.EnableZipkinServer;


@SpringBootApplication

@EnableZipkinServer

public class ZipKinApplication {

   public static void main(String[] args) {

       SpringApplication.run(ZipKinApplication.class,args);

   }

}

```


注解说明:

@EnableZipkinServer:声明启动Zipkin Server

**创建 Zipkin Client**

创建maven工程,pom.xml


```yaml

<dependencies>

   <dependency>

       <groupId>org.springframework.cloud</groupId>

       <artifactId>spring-cloud-starter-zipkin</artifactId>

       <version>2.0.2.RELEASE</version>

   </dependency>

</dependencies>

```


创建配置文件,application.yml


```yaml

server:

 port: 8090

spring:

 application:

   name: zipkinclient

 sleuth:

   web:

     client:

       enabled: true

   sampler:

     probability: 1.0

 zipkin:

   base-url: http://localhost:9090/

eureka:

 client:

   service-url:

     defaultZone: http://localhost:8761/eureka/

```

   


属性说明:

spring.sleuth.web.client.enabled:设置开启请求跟踪

spring.sleuth.sampler.probability:设置采样比例,默认值是1.0。

spring.zipkin.base-url:Zipkin Server地址。

创建启动类


```java

package com.shuang;


import org.springframework.boot.SpringApplication;

import org.springframework.boot.autoconfigure.SpringBootApplication;


@SpringBootApplication

public class ZipkinClientApplication {

   public static void main(String[] args) {

       SpringApplication.run(ZipkinClientApplication.class,args);

   }

}

```


Handler


```java

package com.shuang.controller;


import org.springframework.beans.factory.annotation.Value;

import org.springframework.web.bind.annotation.GetMapping;

import org.springframework.web.bind.annotation.RequestMapping;

import org.springframework.web.bind.annotation.RestController;


@RestController

@RequestMapping("/zipkin")

public class ZipkinHandler {

 

   @Value("${server.port}")

   public String port;

 

   @GetMapping("/index")

   public String index(){

       return this.port;

   }

}

```


依次启动:


![在这里插入图片描述](https://ucc.alicdn.com/images/user-upload-01/2020071806370183.png)

![在这里插入图片描述](https://ucc.alicdn.com/images/user-upload-01/20200718063715941.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQ0OTY5NjQz,size_16,color_FFFFFF,t_70)

![在这里插入图片描述](https://ucc.alicdn.com/images/user-upload-01/20200718063728788.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQ0OTY5NjQz,size_16,color_FFFFFF,t_70)

目录
相关文章
|
17天前
|
Java 开发者 微服务
从单体到微服务:如何借助 Spring Cloud 实现架构转型
**Spring Cloud** 是一套基于 Spring 框架的**微服务架构解决方案**,它提供了一系列的工具和组件,帮助开发者快速构建分布式系统,尤其是微服务架构。
131 68
从单体到微服务:如何借助 Spring Cloud 实现架构转型
|
15天前
|
Java Nacos Sentinel
Spring Cloud Alibaba:一站式微服务解决方案
Spring Cloud Alibaba(简称SCA) 是一个基于 Spring Cloud 构建的开源微服务框架,专为解决分布式系统中的服务治理、配置管理、服务发现、消息总线等问题而设计。
153 13
Spring Cloud Alibaba:一站式微服务解决方案
|
1天前
|
Java 关系型数据库 Nacos
微服务SpringCloud链路追踪之Micrometer+Zipkin
SpringCloud+Openfeign远程调用,并用Mircrometer+Zipkin进行链路追踪
37 20
|
1月前
|
设计模式 Java API
微服务架构演变与架构设计深度解析
【11月更文挑战第14天】在当今的IT行业中,微服务架构已经成为构建大型、复杂系统的重要范式。本文将从微服务架构的背景、业务场景、功能点、底层原理、实战、设计模式等多个方面进行深度解析,并结合京东电商的案例,探讨微服务架构在实际应用中的实施与效果。
125 6
|
1月前
|
设计模式 Java API
微服务架构演变与架构设计深度解析
【11月更文挑战第14天】在当今的IT行业中,微服务架构已经成为构建大型、复杂系统的重要范式。本文将从微服务架构的背景、业务场景、功能点、底层原理、实战、设计模式等多个方面进行深度解析,并结合京东电商的案例,探讨微服务架构在实际应用中的实施与效果。
49 1
|
16天前
|
运维 监控 持续交付
微服务架构解析:跨越传统架构的技术革命
微服务架构(Microservices Architecture)是一种软件架构风格,它将一个大型的单体应用拆分为多个小而独立的服务,每个服务都可以独立开发、部署和扩展。
144 36
微服务架构解析:跨越传统架构的技术革命
|
3月前
|
安全 应用服务中间件 API
微服务分布式系统架构之zookeeper与dubbo-2
微服务分布式系统架构之zookeeper与dubbo-2
|
3月前
|
负载均衡 Java 应用服务中间件
微服务分布式系统架构之zookeeper与dubbor-1
微服务分布式系统架构之zookeeper与dubbor-1
|
4月前
|
Kubernetes Cloud Native Docker
云原生之旅:从容器到微服务的架构演变
【8月更文挑战第29天】在数字化时代的浪潮下,云原生技术以其灵活性、可扩展性和弹性管理成为企业数字化转型的关键。本文将通过浅显易懂的语言和生动的比喻,带领读者了解云原生的基本概念,探索容器化技术的奥秘,并深入微服务架构的世界。我们将一起见证代码如何转化为现实中的服务,实现快速迭代和高效部署。无论你是初学者还是有经验的开发者,这篇文章都会为你打开一扇通往云原生世界的大门。
|
4月前
|
负载均衡 应用服务中间件 持续交付
微服务架构下的Web服务器部署
【8月更文第28天】随着互联网应用的不断发展,传统的单体应用架构逐渐显露出其局限性,特别是在可扩展性和维护性方面。为了解决这些问题,微服务架构应运而生。微服务架构通过将应用程序分解成一系列小型、独立的服务来提高系统的灵活性和可维护性。本文将探讨如何在微服务架构中有效部署和管理Web服务器实例,并提供一些实际的代码示例。
145 0