skywalking原理_SkyWalking 源码分析 —— Collector Client Component客户端组件
摘要: 原创出处 http://www.iocoder.cn/SkyWalking/collector-client-component/「芋道源码」欢迎转载,保留摘要,谢谢!
本文主要基于 SkyWalking 3.2.6 正式版
- 1. 概述
- 2. Client
- 3. ElasticSearchClient
- 4. GRPCClient
- 5. H2Client
- 6. RedisClient
- 7. ZookeeperClient
- 666. 彩蛋
- 《Netty 实现原理与源码解析 —— 精品合集》
- 《Spring 实现原理与源码解析 —— 精品合集》
- 《MyBatis 实现原理与源码解析 —— 精品合集》
- 《Spring MVC 实现原理与源码解析 —— 精品合集》
- 《Spring Boot 实现原理与源码解析 —— 精品合集》
- 《数据库实体设计合集》
- 《Java 面试题 —— 精品合集》
- 《Java 学习指南 —— 精品合集》
1. 概述
本文主要分享 SkyWalking Collector Client Component 客户端组件。Collector 通过客户端,和其他服务进行通信,例如 Elastic Search 、Zookeeper 、H2 等等。
Client Component 在 SkyWalking 架构图处于如下位置( 红框 ) :
FROM https://github.com/apache/incubating-skywalking
下面我们来看看整体的项目结构,如下图所示 :
OK,我们从接口到实现的顺序进行分享。
2. Client
org.skywalking.apm.collector.client.Client
,客户端接口。其定义接口方法如下:
#initialize()
方法,初始化客户端。#shutdown()
方法,关闭客户端。
Client 的实现类,如下类图:
3. ElasticSearchClient
org.skywalking.apm.collector.client.elasticsearch.ElasticSearchClient
,Elastic Search 客户端。
基于 org.elasticsearch.client.transport
的 5.5.0
版本,封装 SkyWalking 需要的 Elastic Search 操作。目前用于 collector-storage-es-provider
模块。
4. GRPCClient
org.skywalking.apm.collector.client.grpc.GRPCClient
,gRPC 客户端。
基于 io.grpc.grpc-core
的 1.8.0
版本,封装 SkyWalking 需要的 gRPC 操作。目前用于 collector-remote-grpc-provider
模块。
5. H2Client
org.skywalking.apm.collector.client.h2.H2Client
,H2 数据库客户端。
基于 com.h2database.h2
的 1.4.196
版本,封装 SkyWalking 需要的 H2 数据库操作。目前用于 collector-storage-h2-provider
/ collector-cluster-standalone-provider
模块。
6. RedisClient
org.skywalking.apm.collector.client.redis.RedisClient
,Redis 客户端。
基于 redis.clients.jedis
的 2.9.0
版本,封装 SkyWalking 需要的 Reids 操作。预计未来用于 collector-cluster-redis-provider
模块。
7. ZookeeperClient
org.skywalking.apm.collector.client.zookeeper.ZookeeperClient
,Zookeeper 客户端。
基于 org.apache.zookeeper.zookeeper
的 3.4.10
版本,封装 SkyWalking 需要的 Zookeeper 操作。预计未来用于 collector-cluster-zookeeper-provider
模块。
skywalking原理_SkyWalking 源码分析 —— Collector Client Component客户端组件相关推荐
- skywalking使用方法_SkyWalking 源码分析—— Collector Server Component 服务器组件
摘要: 原创出处 http://www.iocoder.cn/SkyWalking/collector-server-component/「芋道源码」欢迎转载,保留摘要,谢谢! 本文主要基于 SkyW ...
- SkyWalking 源码分析 —— Collector Storage 存储组件
1. 概述 本文主要分享 SkyWalking Collector Storage 存储组件.顾名思义,负责将调用链路.应用.应用实例等等信息存储到存储器,例如,ES .H2 . 友情提示:建议先阅读 ...
- ConcurrentHashMap实现原理及源码分析
ConcurrentHashMap是Java并发包中提供的一个线程安全且高效的HashMap实现(若对HashMap的实现原理还不甚了解,可参考我的另一篇文章HashMap实现原理及源码分析),Con ...
- concurrenthashmap_ConcurrentHashMap实现原理及源码分析
ConcurrentHashMap是Java并发包中提供的一个线程安全且高效的HashMap实现(若对HashMap的实现原理还不甚了解,可参考我的另一篇文章HashMap实现原理及源码分析),Con ...
- SIFT原理与源码分析:DoG尺度空间构造
<SIFT原理与源码分析>系列文章索引:http://blog.csdn.net/xiaowei_cqu/article/details/8069548 尺度空间理论 自然界中的物体随着观 ...
- 深入理解Spark 2.1 Core (十二):TimSort 的原理与源码分析
在博文<深入理解Spark 2.1 Core (十):Shuffle Map 端的原理与源码分析 >中我们提到了: 使用Sort等对数据进行排序,其中用到了TimSort 这篇博文我们就来 ...
- 深入理解Spark 2.1 Core (十一):Shuffle Reduce 端的原理与源码分析
我们曾经在<深入理解Spark 2.1 Core (一):RDD的原理与源码分析 >讲解过: 为了有效地实现容错,RDD提供了一种高度受限的共享内存,即RDD是只读的,并且只能通过其他RD ...
- 深入理解Spark 2.1 Core (十):Shuffle Map 端的原理与源码分析
在上一篇<深入理解Spark 2.1 Core (九):迭代计算和Shuffle的原理与源码分析>提到经过迭代计算后, SortShuffleWriter.write中: // 根据排序方 ...
- 深入理解Spark 2.1 Core (八):Standalone模式容错及HA的原理与源码分析
第五.第六.第七篇博文,我们讲解了Standalone模式集群是如何启动的,一个App起来了后,集群是如何分配资源,Worker启动Executor的,Task来是如何执行它,执行得到的结果如何处理, ...
最新文章
- 微信小程序开发第三弹
- 718保时捷spyder_我要买保时捷718 Spyder的原因:新手也可以玩手动
- 实验开篇介绍---开发板介绍
- JConsole连接远程linux服务器配置
- Android2D绘图四
- Python+django网页设计入门(10):分页显示
- linux sudo使用和sudoers配置详解
- Vue之webpack之基本使用
- 阐述计算机在材料科学中的应用,计算机在材料科学中的应用例题
- C#中的常量、类型推断和作用域
- rabbitmq 手动提交_RabbitMQ 相关问题总结--RabbitMQ 如何确保消息发送和消费?
- 千淘万漉虽辛苦,吹尽狂沙始见金
- 37d43641ef34f1a8a47c803dcf5a13793e3b9fef
- [机房练习赛4.3]drive
- DRN: A Deep Reinforcement Learning Framework for News Recommendation理解
- 关于精准打击自签名伪造SSL/TLS “受信任域名证书”的方案
- 个人空间岁末大回报活动12月26日获奖名单
- 客服常用话术大全,赶紧收藏起来吧!
- 感觉黑客帝国的时代不远了
- 3D模型欣赏:2000宝马E46瓦罐 光影材质逼真,还以为是真的一样!
热门文章
- 最简单实现多线程的方法(Thread)
- Java多线程面试准备:聊聊Executor框架
- 使用IntentService在Service中创建耗时任务
- 不停应用重启oracle数据库,此类情况下解决Oracle数据库重启的四种方案
- (Mybatis)动态SQL
- Springboot mybatis逆向工程org.springframework.beans.factory.BeanCreationException: Error creating bean错误
- 杭电oj1072java实现bfs
- ffmpeg入门及java操作ffmpeg对视频进行处理
- html简介及常用标签
- 剑指Offer #08 跳台阶(递推)