运行 java -jar zipkin-server-2.12.9-exec.jar
验证是否成功
<!--包含了sleuth zipkin 数据链路追踪-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-zipkin</artifactId>
</dependency>
server:
port: 8001
spring:
application:
name: cloud-payment-service
datasource:
# 当前数据源操作类型
type: com.alibaba.druid.pool.DruidDataSource
# mysql 驱动类
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://localhost:3306/cloud2020?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=GMT%2B8
username: root
password: root
# zipkin
zipkin:
base-url: http://localhost:9411
sleuth:
sampler:
#采样取值介于 0到1之间,1则表示全部收集
probability: 1
mybatis:
mapper-locations: classpath*:mapper/*.xml
type-aliases-package: com.ray.springcloud.entity
# Eureka
eureka:
client:
#表示将自己注册进EurekaServer,默认为true
register-with-eureka: true
#是否从EurekaServer抓取已有的注册消息,默认为true,单节点无所谓,集群必须设置为true才能配合ribbon使用负载均衡
fetch-registry: true
service-url:
# 单机版
# defaultZone: http://localhost:7001/eureka
# 集群版
defaultZone: http://eureka7001.com:7001/eureka/,http://eureka7002.com:7002/eureka/
instance:
# 服务名称修改
instance-id: payment8001
# 访问信息ip提示
prefer-ip-address: true
# Eureka 客户端向服务端发送心跳的实际间隔,单位为秒(默认30秒)
# lease-renewal-interval-in-seconds: 1
# Eureka 服务端收到最后一次心跳后等待时间上限,单位为秒(默认90秒),超出将剔除服务
# lease-expiration-duration-in-seconds: 2
package com.ray.springcloud.controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* @Description: Zipkin
* @Author Ray
* @Date 2020/10/21 11:04
* @Version 1.0
*/
@RestController
public class ZipkinController {
@GetMapping(value = "/payment/zipkin")
public String paymentZipkin() {
return "hello, i am paymentZipkin server fallback";
}
}
<!--包含了sleuth zipkin 数据链路追踪-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-zipkin</artifactId>
</dependency>
server:
port: 80
spring:
application:
name: cloud-order-service
# zipkin
zipkin:
base-url: http://localhost:9411
sleuth:
sampler:
#采样取值介于 0到1之间,1则表示全部收集
probability: 1
# Eureka
eureka:
client:
#表示将自己注册进EurekaServer,默认为true
register-with-eureka: true
#是否从EurekaServer抓取已有的注册消息,默认为true,单节点无所谓,集群必须设置为true才能配合ribbon使用负载均衡
fetch-registry: true
service-url:
# 单机版
# defaultZone: http://localhost:7001/eureka
# 集群版
defaultZone: http://eureka7001.com:7001/eureka/,http://eureka7002.com:7002/eureka/
package com.ray.springcloud.controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.client.RestTemplate;
import javax.annotation.Resource;
/**
* @Description: Zipkin
* @Author Ray
* @Date 2020/10/21 11:06
* @Version 1.0
*/
@RestController
public class ZipkinController {
// 使用支付服务集群后,这里不能写死,这样写只适用于 - 单机版
public static final String PAYMENT_URL = "http://localhost:8001";
@Resource
private RestTemplate restTemplate;
@GetMapping(value = "/consumer/payment/zipkin")
public String paymentZipkin() {
return restTemplate.getForObject(PAYMENT_URL + "/payment/zipkin/", String.class);
}
}
依次启动 7001、8001、80 服务