SpringCloud第三天

                                    Nacos之服務註冊發現

一  新建module 名稱爲  threeday。

     pom配置如下。

 <dependencies>
        <dependency>
            <groupId>com.alibaba.boot</groupId>
            <artifactId>nacos-discovery-spring-boot-starter</artifactId>
            <version>0.2.1</version>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
    </dependencies>

 二  main方法爲

 
@SpringBootApplication
public class ThreeMain {
    public static void main(String[] args) {
        SpringApplication.run(ThreeMain.class,args);
    }
}

三  controller 代碼

@RestController
@RequestMapping("discovery")
public class DiscoveryController {

    @NacosInjected
    private NamingService namingService;


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

四  properties爲

nacos.discovery.server-addr=127.0.0.1:8848
server.port=8082

五 啓動main方法,並訪問 http://localhost:8082/discovery/get?serviceName=example

   發現返回爲空,這是因爲這時候我們還沒有註冊

六  啓動第一天的服務端口爲8081,並執行

curl -X PUT 'http://127.0.0.1:8848/nacos/v1/ns/instance?serviceName=example&ip=127.0.0.1&port=8081'

 

  1. 返回數據爲

[{"instanceId":"127.0.0.1#8081#DEFAULT#DEFAULT_GROUP@@example","ip":"127.0.0.1","port":8081,"weight":1.0,"healthy":true,"cluster":{"serviceName":null,"name":"","healthChecker":{"type":"TCP"},"defaultPort":80,"defaultCheckPort":80,"useIPPort4Check":true,"metadata":{}},"service":null,"metadata":{}}]

 

服務已經註冊和發佈成功。

理解  nacos 是通過restful風格的api來提供服務的註冊和發現功能

github 倉庫是 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章