1.Nacos服务注册发现模型
_______________________________________________
| 服务发现组件(维护注册表) |
| 1.请求注册表/ \ |
|2.缓存注册表 / 1.插入(注册) \ |
| / 2.发送心跳信息 \ |
| 服务A 服务B |
|_______________________________________________|
__________________________________________________________________
| 服务注册表 |
| id service_name ip port status last_heartbeat|
| | | | | | | |
| |-1 |-user-center |-127.0.0.1 |-8080 |-up |-timestamp1 |
| |-2 |-content-center |-127.0.0.1 |-8010 |-up |-timestamp2 |
| |-3 |-user-center |-192.168.1.100 |-8080 |-up |-timestamp3 |
|__________________________________________________________________|
____________________________________________________________
| Nacos Server |
| / \ |
| 请求、注册 请求、注册 |
| / \ |
| 服务A ________调用_______ 服务B |
| (需集成Nacos CLient) (需集成Nacos CLient) |
|____________________________________________________________|
2.安装Nacos Server
3.服务A/B集成Nacos CLient
|
|-添加Nacos-discovery依赖
|-添加@EnableDiscoveryClent注解 (新版本Spring boot中可以省略)
|-配置Nacos.discovery.server-addr,application.name(名称中不要用下划线)
4.代码中注入discoveryClient
注:Spring Cloud提供了DiscoveryClient接口。
5.服务发现的领域模型
___________________________Namespace_________________
| |
| ____________________Group________________ |
|| | |
|| ___________Service___________ | |
||| | | |
||| _Cluster1__ _Cluster2__ | | |
|||| | | || | |
||||Instance 1 | |Instance 3 || ... | ... |
|||| | | || | |
||||instance 2 | |instance 4 || | |
||||___________| |___________|| | |
|||______________________________| | |
||___________________________________________| |
|_____________________________________________________|
Namespace:实现隔离,默认public;
Group:不同服务可以分到一个组,默认Default_Group;
Service:微服务;
Cluster:对指定微服务的一个虚拟划分,默认Default;
Instance:微服务实例;
6.Nacos元数据
级别描述,微服务不同版本描述等