SpringCloud学习(二)Nacos介绍及Nacos服务搭建

一、Nacos简介

1. Nacos是什么?

Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据及流量管理。
Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。 Nacos 是构建以“服务”为中心的现代应用架构 (例如微服务范式、云原生范式) 的服务基础设施。

2. 为什么选用Nacos

随着eureka的停止更新,如果同时实现注册中心和配置中心需要SpringCloud Eureka和SpringCloud Config两个组件

配置修改刷新时需要SpringCloud Bus消息总线发出消息通知(Kafka、RabbitMQ等)到各个服务完成配置动态更新,否者只有重启各个微服务实例,但是nacos可以同时实现注册和配置中心,以及配置的动态更新。

3. Nacos vs Spring Cloud

相对于 Spring Cloud Eureka 来说,Nacos 更强大。

Nacos = Spring Cloud Eureka + Spring Cloud Config

Nacos 可以与 Spring, Spring Boot, Spring Cloud 集成,并能代替 Spring Cloud Eureka, Spring Cloud Config:

- 通过 Nacos Server 和 spring-cloud-starter-alibaba-nacos-config 实现配置的动态变更。 - 通过 Nacos Server 和 spring-cloud-starter-alibaba-nacos-discovery 实现服务的注册与发现。

二、Nacos服务搭建

1. 下载nacos-server

地址:https://github.com/alibaba/nacos/releases

选择nacos-server-1.4.3.zip下载并解压。

2. Nacos部署环境

必须要先配置好JDK8+环境!!!

Nacos支持三种部署模式:

    单机模式:用于测试和单机试用。 集群模式:用于生产环境,确保高可用。 多集群模式:用于多数据中心场景。

3. 单机模式下运行Nacos

单机模式默认是内嵌数据库,不需要配置数据库就可通过命令运行。

- Linux/Unix/Mac

执行脚本命令如下:

startup.sh -m standalone

- Windows

执行如下cmd命令:

startup.cmd -m standalone

其中-m standalone指定为单机模式,否则以cluster集群模式启动。

4. 单机模式支持mysql

在0.7版本之前,在单机模式时nacos使用嵌入式数据库实现数据的存储,不方便观察数据存储的基本情况。

0.7版本增加了支持mysql数据源能力,具体的操作步骤:

  1. 安装数据库,版本要求:5.6.5+
  2. 初始化mysql数据库,数据库初始化文件:nacos-mysql.sql
  3. 修改conf/application.properties文件,增加支持mysql数据源配置(目前只支持mysql),添加mysql数据源的url、用户名和密码。
spring.datasource.platform=mysql

db.num=1
db.url.0=jdbc:mysql://11.162.196.16:3306/nacos_devtest?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true
db.user=nacos_devtest
db.password=youdontknow

再以单机模式启动nacos,nacos所有写嵌入式数据库的数据都写到了mysql。

5. 集群模式

请参见官网: 或

经验分享 程序员 微信小程序 职场和发展