所有博文均在个人独立博客http://blog.mozhu.org首发,欢迎访问!

Zipkin是用当下最流行的SpringBoot开发的,SpringBoot将Spring项目的开发过程大大简化,一切主流的开发框架都可以通过添加jar包和配置,自动激活,现在越来越受广大Java开发人员的喜爱。
上一篇博文中,我们分析了Brave是如何在SpringMVC项目中使用的,这一篇博文我们继续分析Brave和SpringBoot项目的整合方法及原理。

相关代码在Chapter6/springboot中
pom.xml中添加依赖和插件

<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter</artifactId><version>${springboot.version}</version>
</dependency>
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId><version>${springboot.version}</version>
</dependency><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><configuration><fork>true</fork></configuration>
</plugin>
package org.mozhu.zipkin.springboot;import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.boot.autoconfigure.SpringBootApplication;@SpringBootApplication
@EnableAutoConfiguration
public class DefaultApplication {public static void main(String[] args) {SpringApplication.run(DefaultApplication.class, args);}}

启动Zipkin,然后分别运行

mvn spring-boot:run -Drun.jvmArguments="-Dserver.port=9000 -Dzipkin.service=backend"
mvn spring-boot:run -Drun.jvmArguments="-Dserver.port=8081 -Dzipkin.service=frontend"

浏览器访问 http://localhost:8081/ 会显示当前时间
在Zipkin的Web界面中,也能查询到这次跟踪信息

可见Brave和SpringBoot的整合更简单了,只添加了启动类DefaultApplication,其他类都没变化。至于SpringBoot的原理,这里就不展开了,网上优秀教程一大把。

在brave-instrumentation目录中,还有对其他框架的支持,有兴趣的可以看看其源代码实现。
grpc
httpasyncclient
httpclient
jaxrs2
kafka-clients
mysql
mysql6
p6spy
sparkjava

至此,我们Brave的源码分析即将告一段落,后续我们会逐步zipkin的高级用法及实现原理。

Java分布式跟踪系统Zipkin(六):Brave源码分析-Brave和SpringBoot整合相关推荐

  1. Java分布式跟踪系统Zipkin(二):Brave源码分析-Tracer和Span

    所有博文均在个人独立博客http://blog.mozhu.org首发,欢迎访问! Brave是Java版的Zipkin客户端,它将收集的跟踪信息,以Span的形式上报给Zipkin系统. (Zipk ...

  2. Java分布式跟踪系统Zipkin(五):Brave源码分析-Brave和SpringMVC整合

    所有博文均在个人独立博客http://blog.mozhu.org首发,欢迎访问! 上一篇博文中,我们分析了Brave是如何在普通Web项目中使用的,这一篇博文我们继续分析Brave和SpringMV ...

  3. 基于JAVA在线学习跟踪系统前台计算机毕业设计源码+系统+mysql数据库+lw文档+部署

    基于JAVA在线学习跟踪系统前台计算机毕业设计源码+系统+mysql数据库+lw文档+部署 基于JAVA在线学习跟踪系统前台计算机毕业设计源码+系统+mysql数据库+lw文档+部署 本源码技术栈: ...

  4. 基于JAVA智慧校园系统后端计算机毕业设计源码+系统+数据库+lw文档+部署

    基于JAVA智慧校园系统后端计算机毕业设计源码+系统+数据库+lw文档+部署 基于JAVA智慧校园系统后端计算机毕业设计源码+系统+数据库+lw文档+部署 本源码技术栈: 项目架构:B/S架构 开发语 ...

  5. Java的三种代理模式完整源码分析

    Java的三种代理模式&完整源码分析 Java的三种代理模式&完整源码分析 参考资料: 博客园-Java的三种代理模式 简书-JDK动态代理-超详细源码分析 [博客园-WeakCach ...

  6. java中的==、equals()、hashCode()源码分析(转载)

    在java编程或者面试中经常会遇到 == .equals()的比较.自己看了看源码,结合实际的编程总结一下. 1. ==  java中的==是比较两个对象在JVM中的地址.比较好理解.看下面的代码: ...

  7. Apache Storm 实时流处理系统ACK机制以及源码分析

    1.ACK机制简介 Storm的可靠性是指Storm会告知用户每一个消息单元是否在一个指定的时间(timeout)内被完全处理.完全处理的意思是该MessageId绑定的源Tuple以及由该源Tupl ...

  8. 这篇文章绝对让你深刻理解java类的加载以及ClassLoader源码分析

    前言 package com.jvm.classloader;class Father2{public static String strFather="HelloJVM_Father&qu ...

  9. Java 集合系列(四)—— ListIterator 源码分析

    以脑图的形式来展示Java集合知识,让零碎知识点形成体系 Iterator 对比   Iterator(迭代器)是一种设计模式,是一个对象,用于遍历集合中的所有元素.   Iterator 包含四个方 ...

最新文章

  1. 全面分析阿里数据中台,小白也能看懂 | CSDN原力计划
  2. 调整weblogic内存的分配和使用
  3. predicate java_java8中predicate的用法介绍(代码示例)
  4. 【Nodejs篇五】Node js 使用 superagent 与 cheerio 完成简单爬虫
  5. C#语言-NPOI.dll导入Excel功能的实现
  6. 如何防止线程死锁java_Java 并发编程:如何防止在线程阻塞与唤醒时死锁
  7. 计算机大学英语值最高的3项,计算机等级考试一级B上机试题:Windows字处理
  8. 翻译:图解HTTPS工作原理、秘钥、握手、HTTPS,SSL,TLS的区别、证书
  9. numpy 1.22.1 基本语法
  10. 常用的计算机组装工具有,计算机组装维护与常用工具软件考试含答案
  11. 用Python实现从Oracle到GreenPlum的表结构转换
  12. QML QtLocation地图应用学习-5:实现自己的plugin加载瓦片地图
  13. 考研数学常用基础知识默写版
  14. windows10 安装office2021(预装正版)经验分享
  15. 成功者根本没有告诉你故事的全部 (转文)
  16. python类和封装之面向对象反恐精英实战
  17. Nature计算社会科学特刊:如何对21世纪人类社会进行有意义的度量?
  18. USB基础书籍资料推荐
  19. 按条件隐藏bootstrapTable某一列
  20. python 列表 循环 实现简易的电子商城

热门文章

  1. marquee的用法,例子
  2. •Oracle 9i企业版官方下载 9.2.0.1.0
  3. PCB学习笔记——AD17如何将原理图和PCB图同时显示
  4. opencv手写数字识别(未完待续...)
  5. 哈希表链地址法解决冲突
  6. JavaScript 代码格式化及编写工具
  7. 交通银行计算机设备实物管理,酷!AI助力交通银行提升风险管理能力
  8. 川崎机器人总线通信_川崎机器人 | EtherNet/IP安装使用说明
  9. 东北大学2018计算机录取分数,东北大学分数线2018 各省最新录取分数线
  10. windows cmd sqlplus访问Oracle数据库显示?胧淙胗没? SP2-0306: ?∠钗扌А?的问题