侧边栏壁纸
博主头像
Epoch

Java开发、Python爬虫、微服务、分布式、前端

  • 累计撰写 92 篇文章
  • 累计创建 109 个标签
  • 累计收到 0 条评论

目 录CONTENT

文章目录

Spring Boot集成Nacos实现服务注册与发现

Epoch
2020-06-10 / 0 评论 / 0 点赞 / 241 阅读 / 425 字 / 正在检测是否收录...

目标:Nacos集成Spring Boot实现服务注册与发现
工具:IDEA–2020.1、Nacos
学习目标:学习Nacos集成Spring Boot实现服务注册与发现
本次学习的工程下载链接放到文本最后面

1.创建一个Spring Boot工程springboot-nacos-discovery##

2.添加Maven依赖

    <dependency>
        <groupId>com.alibaba.boot</groupId>
        <artifactId>nacos-discovery-spring-boot-starter</artifactId>
        <version>0.2.4</version>
    </dependency>

3.创建DiscoveryController类,通过@NacosInjected注入nacos的NamingService,并提供discovery方法,可以根据服务名称获得注册到Nacos上的服务地址

@RestController
public class DiscoveryController {

    @NacosInjected   // 通过注解注入nacos的NamingService,并提供discovery方法,可以根据服务名称获得注册到Nacos上的服务地址
    private NamingService namingService;

    @GetMapping("/discovery")
    public List<Instance> get(@RequestParam String serviceName) throws NacosException {
        return namingService.getAllInstances(serviceName);
    }
}

4.在application.yml添加Nacos服务地址的配置

nacos:
  discovery:
    server-addr: 127.0.0.1:8848

启动工程之前先启动Nacos服务

5.先在服务器中访问 http://127.0.0.1:8080/discovery?serviceName=example

这个的意思是去Nacos服务器查询服务名称example所对应的地址信息,由于此时的Nacos Server并没有example的服务实例,放回一个空的JSON数组[]
DYTATI6}%ZV2UP%RQ.png

6.接着,通过Nacos提供的OpenAPI,想Nacos Server注册一个名字为example的服务 (这个也可以自己去服务中心配置)##

这个网址是: http://127.0.0.1:8848/nacos/v1/ns/instance?serviceName=example&ip=127.0.0.1&port=8080

I_`4(W.png

7.再次访问 http://127.0.0.1:8080/discovery?serviceName=example 返回如下信息

HFA0S$4.png


下载链接:springboot-nacos-discovery.rar

0

评论区