SpringBoot整合Nacos注册中心

#### 什么是Nacos
Nacos 是阿里巴巴的开源的项目,Nacos致力于帮助您发现、配置和管理微服务。Nacos提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据及流量管理。Nacos帮助您更敏捷和容易地构建、交付和管理微服务平台。Nacos是构建以“服务”为中心的现代应用架构 (例如微服务范式、云原生范式) 的服务基础设施。
将使用Nacos作为微服务架构中的注册中心(替代:eurekba、consul等传统方案)以及配置中心(spring cloud config)来使用。

#### Nacos生态图
![file](https://img2018.cnblogs.com/blog/1602984/201909/1602984-20190925232558311-1904416345.jpg)

#### 搭建Nacos环境
下载最新地址:https://github.com/alibaba/nacos/releases
本章节使用的版本:nacos-server-1.1.3
下载完成之后,解压。根据不同平台,执行不同命令,启动单机版Nacos服务:
```
+ Linux/Unix/Mac:sh startup.sh -m standalone
+ Windows:cmd startup.cmd -m standalone
```
启动完毕后,访问:http://127.0.0.1:8848/nacos/ ,进行登录账号密码默认:nacos
nacos想当与之前的eureka注册中心,有了注册中心,我们现在快速实现一个服务注册
创建alibaba-nacos项目
引入pom.xml依赖
```

4.0.0

org.springframework.boot
spring-boot-starter-parent
2.0.5.RELEASE

com.xiaobin
alibaba-nacos
0.0.1-SNAPSHOT
alibaba-nacos
Demo project for Spring Boot

1.8

org.springframework.cloud
spring-cloud-dependencies
Finchley.SR1
pom
import

org.springframework.cloud
spring-cloud-alibaba-dependencies
0.2.2.RELEASE
pom
import

org.springframework.boot
spring-boot-starter

org.springframework.boot
spring-boot-starter-web

org.springframework.cloud
spring-cloud-starter-alibaba-nacos-discovery

org.springframework.boot
spring-boot-starter-test
test

org.springframework.boot
spring-boot-maven-plugin

```
application配置文件
```
spring.application.name=nacos-test
spring.cloud.nacos.discovery.server-addr=127.0.0.1:8848
server.port=10010
```
创建应用主类进行启动
```
@SpringBootApplication
@EnableDiscoveryClient
public class AlibabaNacosApplication {

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

@LoadBalanced
@Bean
public RestTemplate restTemplate() {
return new RestTemplate();
}
}

}
```
启动成功后,在nacos的控制台服务列表中就可以看到信息,效果图

![file](https://img2018.cnblogs.com/blog/1602984/201909/1602984-20190925232558765-1788764812.jpg)

在注册一个服务进行消费操作
创建alibaba_nacos_provider项目依赖和上文是一样的
配置application
```
spring.application.name=nacos-provider
spring.cloud.nacos.discovery.server-addr=127.0.0.1:8848
```
添加Http接口进行测试
```
@SpringBootApplication
@EnableDiscoveryClient
@RestController
public class ProviderApp {

public static void main(String[] args) {
SpringApplication.run(ProviderApp.class);
}

@GetMapping("/get")
public String get(){
return "SpringCloud alibaba 我来啦...";
}

}

```
启动项目,会发现服务列表中多了nacos-provider
![file](https://img2018.cnblogs.com/blog/1602984/201909/1602984-20190925232558972-1513903978.jpg)

回到alibaba-nacos项目,添加TestController进行调用消费
```
package com.xiaobin.alibabanacos;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.client.RestTemplate;

/**
* 创建时间: 2019/9/25 23:02
* 备注:
* 码农自学交流小群:260532022,欢迎大家的加入,分享学习是一件开心事
**/

@RestController
public class TestController {

@Autowired
private RestTemplate restTemplate;

@GetMapping("/test")
public String test(){
return restTemplate.getForObject("http://nacos-provider/get", String.class);
}
}
```

访问 http://localhost:10010/test 接口请求
![file](https://img2018.cnblogs.com/blog/1602984/201909/1602984-20190925232559197-277920809.jpg)

#### 小结
一个 Nacos 就轻松搞定了,还捎带着配置管理中心,一举两得,何乐不为。

###### 码农自学交流小群:260532022,欢迎大家的加入,分享学习是一件开心事

原文地址:https://www.cnblogs.com/hy-xiaobin/p/11588340.html

时间: 2024-08-01 22:07:43

SpringBoot整合Nacos注册中心的相关文章

SpringBoot使用Nacos配置中心

本文介绍SpringBoot如何使用阿里巴巴Nacos做配置中心. 1.Nacos简介 Nacos是阿里巴巴集团开源的一个易于使用的平台,专为动态服务发现,配置和服务管理而设计.它可以帮助您轻松构建云本机应用程序和微服务平台. Nacos基本上支持现在所有类型的服务,例如,Dubbo / gRPC服务,Spring Cloud RESTFul服务或Kubernetes服务. 尤其是使用Eureka注册中心的,并且担心Eureka闭源的开发者们,可以将注册中心修改为Nacos,本文主要介绍Naco

Spring Cloud Alibaba 使用nacos 注册中心

### 背景 上一文我们讲到了如何去搭建注册中心,这一次我们讲述如何使用nacos作为注册中心 ### spring-cloud-alibaba-basis 创建基础依赖 首先我们创建一个spring-cloud-alibaba-basis 基础依赖 工程里面制定我们要用到的公用的版本 - spring boot 版本 2.1.7.RELEASE - spring cloud 版本 Greenwich.RELEASE - spring cloud 阿里巴巴的版本 2.1.0.RELEASE -

docker 快速部署nacos注册中心

docker 快速部署nacos注册中心 拉去并启动docker-compose 服务 # git 拉去相关文件 git clone https://github.com/nacos-group/nacos-docker.git # 进入文件夹 cd nacos-docker/example # 运行docker-compose 服务 docker-compose -f standalone-mysql.yaml up # 关闭 容器服务命令 docker-compose -f standalo

Spring Cloud - Nacos注册中心入门单机模式及集群模式

近几年微服务很火,Spring Cloud提供了为服务领域的一整套解决方案.其中Spring Cloud Alibaba是我们SpringCloud的一个子项目,是提供微服务开发的一站式解决方案. 包含微服务开发的必要组件,基于SpringCloud 符合SpringCloud标准,是阿里的微服务的解决方案. 文档:https://github.com/alibaba/spring-cloud-alibaba/blob/master/README-zh.md Nacos的安装与启动 Nacos是

spring cloud alibaba Nacos 注册中心搭建

nacos下载地址 什么是 Nacos? nacos主要起到俩个作用一个是注册中心,另外一个是配置中心. 下面图 是nacos的功能结构图 运行环境 JDK 1.8+: Maven 3.2.x+: 下载 你可以通过源码和发行包两种方式来获取 Nacos. nacos发行包下载地址 选择版本解压 unzip nacos-server-$version.zip 或者 tar -xvf nacos-server-$version.tar.gz cd nacos/bin github下载地址 git c

Spring Cloud Alibaba nacos 配置中心使用

背景 上一文我们讲到了如何去搭建注册中心,这一次我们讲述如何使用nacos作为注册中心 spring-cloud-alibaba-basis 创建基础依赖 首先我们创建一个spring-cloud-alibaba-basis 基础依赖 工程里面制定我们要用到的公用的版本 spring boot 版本 2.1.7.RELEASE spring cloud 版本 Greenwich.RELEASE spring cloud 阿里巴巴的版本 2.1.0.RELEASE Spring IO Platfo

dubbo学习(五)注册中心zookeeper

初识zookeeper 下载地址:https://archive.apache.org/dist/zookeeper/ PS: 建议目前选择3.4的稳定版本进行使用 1.下载并解压文件 2.配置zookeeper 3.启动zookeeper 4.连接ZK PS:这里只简单介绍zookeeper,后续与dubbo整合作为注册中心进行操作将在实操篇进行详细说明 原文地址:https://www.cnblogs.com/riches/p/11199402.html

Spring Cloud之整合ZK作为注册中心

Eureka已经闭源了,用zk可以替代之 Eureka 作为注册中心 Dubbo也是zk作为注册中心的 Zookeeper简介 Zookeeper是一个分布式协调工具,可以实现服务注册与发现.注册中心.消息中间件.分布式配置中心等. 公共pom: <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId&

springboot 注册服务注册中心(zk)的两种方式

在使用springboot进行开发的过程中,我们经常需要处理这样的场景:在服务启动的时候,需要向服务注册中心(例如zk)注册服务状态,以便当服务状态改变的时候,可以故障摘除和负载均衡. 我遇到过两种注册的途径: 1.在Spring的webapplication启动完成后,直接进行注册: 2.在servlet容器启动完成后,通过listener进行注册. 本文通过一个demo讲述一下这两种注册方式,使用的是传统的向zk注册的方案. 1.Spring webapplication启动完成后注册 先上