本篇文章介绍链路追踪的另外一种解决方案Skywalking,文章目录如下:
什么是Skywalking?
上一篇文章介绍了分布式链路追踪的一种方式:Spring Cloud Sleuth ZipKin,这种方案目前也是有很多企业在用,但是作为程序员要的追逐一些新奇的技术,Skywalking作为后起之秀也是值得大家去学习的。
skywalking是一个优秀的国产开源框架,2015年由个人吴晟(华为开发者)开源 , 2017年加入Apache孵化器。短短两年就被Apache收入麾下,实力可见一斑。
skywalking支持dubbo,SpringCloud,SpringBoot集成,代码无侵入,通信方式采用GRPC,性能较好,实现方式是java探针,支持告警,支持JVM监控,支持全局调用统计等等,功能较完善。
Skywalking和Spring Cloud Sleuth ZipKin如何选型?
Skywalking相比于zipkin还是有很大的优势的,如下:
- skywalking采用字节码增强的技术实现代码无侵入,zipKin代码侵入性比较高
- skywalking功能比较丰富,报表统计,UI界面更加人性化
个人建议:如果是新的架构,建议优先选择skywalking。
此时直接访问:http://localhost:8888/,直接进入UI端,如下图:
此时查看skywalking的UI端,可以看到三个服务已经监控成功了,如下图:
服务之前的依赖关系也是可以很清楚的看到,如下图:
请求链路的信息也是能够很清楚的看到,比如请求的url,执行时间、调用的服务,如下图:
总结
本篇文章介绍了链路追踪解决方案Skywalking,主要讲解了服务端搭建、客户端搭建、数据持久化、日志监控、性能剖析这几个知识点,每个知识点都非常重要。