Spring Cloud 微服务分布式链路跟踪 Sleuth 与 Zipkin
Zipkin 是一个开放源代码分布式的跟踪系统,由 Twitter 公司开源,它致力于收集服务的定时数据,以解决微服务架构中的延迟问题,包括数据的收集、存储、查找和展现。它的理论模型来自于 Google Dapper 论文。 每个微服务向 Zipkin 报告计时数据,Zipkin 会根据调用关系通过 Zipkin UI 生成依赖关系图,显示了多少跟踪请求通过每个服务,该系统让开发者可通过一个 Web 前端轻松的收集和分析数据,例如用户每次请求服务的处理时间等,可方便的监测系统中存在的瓶颈。
GitHub 上相关的开源项目
https://github.com/openzipkin/zipkin
https://github.com/apache/incubator-skywalking
https://github.com/naver/pinpoint
https://github.com/jaegertracing/jaeger
https://github.com/opentracing
https://github.com/dianping/cat
https://github.com/hawkular/hawkular-apm
https://github.com/getsentry/sentry
https://github.com/alipay/sofa-tracer
Zipkin 服务端
关于 Zipkin 的服务端,在使用 Spring Boot 2.x 版本后,官方就不推荐自行定制编译了,可以直接使用编译好的 jar 包,详情:https://github.com/openzipkin/zipkin/issues/1962 ,并且以前的@EnableZipkinServer 也已经被打上了@Deprecated 状态,测试环境可以通过官方的脚本或 Docker 来快速运行。
使用脚本
curl -sSL https://zipkin.io/quickstart.sh | bash -s java -jar zipkin.jar
使用 Docker
sudo yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-selinux docker-engine-selinux docker-engine sudo yum install -y yum-utils device-mapper-persistent-data lvm2 #yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo sudo yum install docker-ce sudo systemctl enable docker && systemctl start docker sudo systemctl status docker sudo systemctl daemon-reload sudo systemctl restart docker docker run -d -p 9411:9411 openzipkin/zipkin
相关文章
- 微服务下前后端分离的统一认证授权服务,基于Spring Security OAuth2 + Spring Cloud Gateway实现单点登录
- Spring Boot 的 HTTP 客户端框架
- 微服务轮子项目(51) -Spring Cloud性能调优
- spring-cloud-sleuth+zipkin追踪服务实现(一)
- spring-cloud-sleuth+zipkin追踪服务实现(二)
- 使用 Spring Cloud Stream 构建消息驱动微服务
- 搭建Spring Boot+Spring Cloud微服务
- 阿里首席架构师解读:Spring Cloud 与 Docker 微服务架构实战
- Spring Cloud Zuul API服务网关之请求路由
- Spring Cloud Feign 声明式服务调用
- 手把手教你用Spring Cloud和Docker构建微服务
- 漏洞复现----43、Spring Cloud Function SpEL 代码注入 (CVE-2022-22963)
- Spring Cloud-Eureka 服务注册中心
- Spring Cloud Alibaba基础教程:Nacos的集群部署
- Spring Cloud Feign的文件上传实现
- Spring Cloud 微服务架构学习笔记与示例
- spring cloud config的bootstrap.yml与application.proterties的区别
- Spring Cloud 系列之 Spring Cloud Stream
- spring cloud 2020.0.1踩坑记录-bootstrap不生效等
- 【Spring Cloud】如何把Feign默认的HTTP客户端URLConnection更换成支持连接池的Apache HttpClient或OKHttp
- 服务对外提供接口以供不同站点之间使用:Spring Cloud Feign使用记录及携带token请求
- Spring Cloud Gateway 整合 knife4j 聚合接口文档
- Spring Cloud : Gateway 服务网关认识(一)
- Spring Cloud Alibaba 微服务整合 OpenFeign(五)
- spring cloud
- Spring Cloud入门教程
- Spring-Cloud-Context模块
- Spring Cloud各组件