Skip to content

Commit c9eb205

Browse files
authored
Update register-center-design.md
1. Updated some class names 2.Explain some confusing concepts
1 parent 69eeea7 commit c9eb205

File tree

1 file changed

+22
-6
lines changed

1 file changed

+22
-6
lines changed

i18n/zh/docusaurus-plugin-content-docs/version-2.5.1/design/register-center-design.md

Lines changed: 22 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -17,14 +17,28 @@ description: 客户端接入原理
1717

1818
## 设计原理
1919

20+
### 术语说明
21+
为了便于读者理解,避免产生歧义,本节的图、文中所提到的"注册中心客户端","注册中心服务端","register-center-client","register-center-server"等
22+
均指的是shenyu-register-client和shenyu-register-client-server,也就是讲的都是由shenyu所包装的一些模块和类。
23+
读者在理解时不要和实际注册中心的客户端、注册中心服务概念搞混淆了(例如:nacos-client、nacos-server)
24+
25+
26+
### 整体流程
27+
1.微服务应用启动,注册信息会通过指定的注册中心客户端先写入到实际的注册中心(例如:nacos)
28+
2.shenyu-admin启动会从实际注册中心中订阅注册信息,放入Disruptor
29+
3.借助shenyu的数据同步机制,将信息实时同步给shenyu-gateway
30+
数据同步机制设计可参考 [数据同步机制设计](data-sync.md)
31+
32+
http服务注册比较特殊,直接由shenyu-admin完成
33+
2034
### 注册中心客户端
2135

2236
![](/img/shenyu/register/client.png)
2337

2438
在你的微服务配置中声明注册中心客户端类型,如`Http``Zookeeper`
2539
应用程序启动时使用`SPI`方式加载并初始化对应注册中心客户端,通过实现`Spring Bean`相关的后置处理器接口,在其中获取需要进行注册的服务接口信息,将获取的信息放入`Disruptor`中。
2640

27-
注册中心客户端从`Disruptor`中读取数据,并将接口信息注册到`shenyu-admin``Disruptor`在其中起数据与操作解耦的作用,利于扩展。
41+
注册中心客户端从`Disruptor`中读取数据,并将接口信息最终注册到`shenyu-admin``Disruptor`在其中起数据与操作解耦的作用,利于扩展。
2842

2943
### 注册中心服务端
3044

@@ -125,6 +139,7 @@ shenyu.register.service.${rpcType}.${contextPath}
125139
订阅端会对所有的`Metadata`配置继续监听,当初次订阅和配置更新后,触发`selector``rule`的数据变更和数据同步事件发布。
126140

127141
### SPI扩展
142+
应用微服务通过shenyu-client接入注册时使用到的一些类
128143

129144
| *SPI 名称* | *详细说明* |
130145
| -------------------------------- | --------------------------- |
@@ -138,16 +153,17 @@ shenyu.register.service.${rpcType}.${contextPath}
138153
| ConsulClientRegisterRepository | 基于Consul注册的实现 |
139154
| NacosClientRegisterRepository | 基于Nacos注册的实现 |
140155

156+
shenyu-admin从注册中心中订阅注册信息时用到的类
141157

142158
| *SPI 名称* | *详细说明* |
143159
| -------------------------------- | ----------------------------- |
144-
| ShenyuServerRegisterRepository | ShenYu网关客户端注册的后台服务资源 |
160+
| ShenyuClientServerRegisterRepository | ShenYu网关客户端注册的后台服务资源 |
145161

146162
| *已知实现类* | *详细说明* |
147163
| -------------------------------- | ----------------------------- |
148164
| ShenyuHttpRegistryController | 使用Http服务接口来处理客户端注册请求 |
149-
| ZookeeperServerRegisterRepository| 使用Zookeeper来处理客户端注册节点 |
150-
| EtcdServerRegisterRepository | 使用Etcd来处理客户端注册节点 |
151-
| ConsulServerRegisterRepository | 使用Consul来处理客户端注册节点 |
152-
| NacosServerRegisterRepository | 使用Nacos来处理客户端注册节点 |
165+
| ZookeeperClientServerRegisterRepository| 使用Zookeeper来处理客户端注册节点 |
166+
| EtcdClientServerRegisterRepository | 使用Etcd来处理客户端注册节点 |
167+
| ConsulClientServerRegisterRepository | 使用Consul来处理客户端注册节点 |
168+
| NacosClientServerRegisterRepository | 使用Nacos来处理客户端注册节点 |
153169

0 commit comments

Comments
 (0)