nacos牛刀小試之註冊中心

上一篇介紹了nacos的下載安裝,如今咱們來看一下nacos的註冊中心

首先新建一個工程web

服務提供者

新建一個springboot工程
我使用maven來構建工程,依賴以下spring


<dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
        
        <dependency>
           <groupId>org.springframework.boot</groupId>
           <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
        </dependency>

所須要的jar包下載完畢springboot

更改配置 上一篇介紹了nacos的下載安裝,如今咱們來看一下nacos的註冊中心app

首先新建一個工程maven

服務提供者 新建一個springboot工程ide

我使用maven來構建工程,依賴以下spring-boot

所須要的jar包下載完畢測試

貼上配置,我採用的是yaml格式的配置,看起來真的清晰spa

server:
  port: 8881

spring:
  application:
    name: nacos-provider
  cloud:
    nacos:
      discovery:
        server-addr: 127.0.0.1:8848

最後咱們稍稍作一個測試類rest

@SpringBootApplication
@EnableDiscoveryClient
@RestController
@Slf4j
public class NacosProviderApplication {

    @GetMapping("/hello")
    public String hello(@RequestParam String name) {
        log.info("invoked name = " + name);
        return "hello " + name;
    }
    
    
    public static void main(String[] args) {
        SpringApplication.run(NacosProviderApplication.class, args);
    }

}

下來咱們啓動下服務

clipboard.png

看到日誌,咱們的服務已經註冊到了nacos,打開nacos看看

clipboard.png
哈哈 咱們的服務成功註冊到了naco

服務消費者

下來咱們建立一個消費者

maven依賴都同樣,配置稍稍改動一下

server:
  port: 8882

spring:
  application:
    name: nacos-consumer
  cloud:
    nacos:
      discovery:
        server-addr: 127.0.0.1:8848

啓動類

@SpringBootApplication
@EnableDiscoveryClient
@Slf4j
@RestController
public class NacosConsumerApplication {

    @Autowired
    private RestTemplate restTemplate;
    
    @GetMapping("/callNacos")
    public String testRest(@RequestParam("name") String name) {
        String result = restTemplate.getForEntity("http://nacos-provider/hello?name="+name,String.class).getBody();
        log.info("調用提供者返回:{}",result);
        return result;
        
    }
    
    public static void main(String[] args) {
        SpringApplication.run(NacosConsumerApplication.class, args);
    }

}

clipboard.png
原來是讓把RestTemplate註冊到spring容器,編寫一個配置類,把RestTemplate注到容器

@Configuration
public class RestTemplateConfig {
    
    @LoadBalanced
    @Bean
    public RestTemplate resultTemplate(){
        RestTemplate template = new RestTemplate();
        return template;
    }

}

註冊以後 咱們在啓動看看,此次沒有異常

打開naocos查看服務列表

clipboard.png

哈哈 都註冊上去了

測試驗證

clipboard.png
成功的返回了咱們須要的結果。

此次簡單的配置使用的nacos的服務註冊功能,都是單節點,之後在研究研究集羣模式

相關文章
相關標籤/搜索