Alibaba Nacos 二 :Nacos的服务注册

服务注册是微服务体系中最重要的组成部分,无论是Eureka,Zookeeper,还是Nacos,都在各自的体系中扮演着重要的服务注册角色。

在上一篇文章中我们已经启动了一个单机的nacos服务,本节我们将新建项目注册到nacos中。

1: 新建项目

建完父工程后,在父工程的中新建子module   provier-payment9000,不需要添加任何配置,普通的maven项目就可以了,后面9000代表端口,主要是为了后面验证nacos负载均衡。

2: 修改pom文件

首先在父工程的pom中定义约束

<!-- 统一管理jar包版本 -->

<properties>

<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>

<maven.compiler.source>1.8</maven.compiler.source>

<maven.compiler.target>1.8</maven.compiler.target>

<junit.version>4.12</junit.version>

<log4j.version>1.2.17</log4j.version>

<lombok.version>1.16.18</lombok.version>

<mysql.version>8.0.18</mysql.version>

<druid.version>1.1.16</druid.version>

<druid.spring.boot.starter.version>1.1.10</druid.spring.boot.starter.version>

<spring.boot.version>2.2.2.RELEASE</spring.boot.version>

<spring.cloud.version>Hoxton.SR1</spring.cloud.version>

<spring.cloud.alibaba.version>2.1.0.RELEASE</spring.cloud.alibaba.version>

<mybatis.spring.boot.version>1.3.0</mybatis.spring.boot.version>

<mybatis-spring-boot-starter.version>2.1.1</mybatis-spring-boot-starter.version>

<hutool-all.version>5.1.0</hutool-all.version>

</properties>

 

<!-- 子模块继承之后,提供作用:锁定版本 + 子module不用谢groupId和version -->

<dependencyManagement>

<dependencies>

<!--spring boot 2.2.2-->

<dependency>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-dependencies</artifactId>

<version>2.2.2.RELEASE</version>

<type>pom</type>

<scope>import</scope>

</dependency>

<!--spring cloud Hoxton.SR1-->

<dependency>

<groupId>org.springframework.cloud</groupId>

<artifactId>spring-cloud-dependencies</artifactId>

<version>Hoxton.SR1</version>

<type>pom</type>

<scope>import</scope>

</dependency>

<!--Spring cloud alibaba 2.1.0.RELEASE-->

<dependency>

<groupId>com.alibaba.cloud</groupId>

<artifactId>spring-cloud-alibaba-dependencies</artifactId>

<version>2.1.0.RELEASE</version>

<type>pom</type>

<scope>import</scope>

</dependency>

<dependency>

<groupId>org.projectlombok</groupId>

<artifactId>lombok</artifactId>

<version>${lombok.version}</version>

</dependency>

</dependencies>

</dependencyManagement>

 

<build>

<plugins>

<plugin>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-maven-plugin</artifactId>

<configuration>

<fork>true</fork>

<addResources>true</addResources>

</configuration>

</plugin>

</plugins>

</build>

 

<!--第三方maven私服-->

<repositories>

<repository>

<id>nexus-aliyun</id>

<name>Nexus aliyun</name>

<url>http://maven.aliyun.com/nexus/content/groups/public</url>

<releases>

<enabled>true</enabled>

</releases>

<snapshots>

<enabled>false</enabled>

</snapshots>

</repository>

</repositories>

子pom文件引入相关座标

<dependencies>

<!-- ===========nacos begin============ -->

<dependency>

<groupId>com.alibaba.cloud</groupId>

<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>

</dependency>

<!-- ===========nacos end============= -->

 

<!-- =============springboot begin=============== -->

<dependency>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-web</artifactId>

</dependency>

<dependency>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-actuator</artifactId>

</dependency>

<!-- =============springboot end=============== -->

<dependency>

<groupId>org.projectlombok</groupId>

<artifactId>lombok</artifactId>

<optional>true</optional>

</dependency>

<dependency>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-test</artifactId>

<scope>test</scope>

</dependency>

</dependencies>

3: 新建启动类

package com.xhc.cloud;

import org.springframework.boot.SpringApplication;

import org.springframework.boot.autoconfigure.SpringBootApplication;

import org.springframework.cloud.client.discovery.EnableDiscoveryClient;

@SpringBootApplication

@EnableDiscoveryClient

public class PaymentMain9000 {

public static void main(String[] args) {

SpringApplication.run(PaymentMain9000.class,args);

}

}

4:在resources目录下新建application.yml文件

server:
  port: 9000

spring:
  application:
    name: nacos-payment-provider
  cloud:
    nacos:
      discovery:
        server-addr: localhost:8848 #配置Nacos地址

management:
  endpoints:
    web:
      exposure:
        include: '*'

5: 启动provider-payment9000,启动完成后,进入nacos控制台,如下图,即表示项目已经注册到nacos中。

 

到此,项目已经注册到nacos中,成为nacos中管理的一个服务。

 

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