SpringCloud Alibaba Nacos服务注册和配置中心

记一次failed to req API:/nacos/v1/ns/instance after all servers([127.0.0.1:8848]) tried:ConnectE解决过程 编码无小事,切不可粗心大意。 阅读详情

Nacos

什么是nacos

nacos (Nacos:Dynamic Naming and Configuration Service) 一个更易于构建云原生应用的动态服务发
现,配置管理和服务管理中心

Nacos就是注册中心+配置中心的组合 等价于 netflix版本的 Eureka+Config+Bus+zik

解决了什么痛点

  • 之前我们在netflix版本遇到的配置需要手动的区分发信息,
  • 杜绝了我们需要专门自己建一个注册中心的包,阿里给我们提供了开箱即用的发行版本,我们只需要简单的配置,直接脚本启动
  • 可以直接查看到集群信息,和调用链路

如何获得和社区文档

下载地址 :https://github.com/alibaba/Nacos

中文文档地址 :https://nacos.io/zh-cn/index.html

官方文档地址 :https://spring-cloud-alibaba-group.github.io/github-pages/greenwich/spring-cloud-alibaba.html#_spring_cloud_alibaba_nacos_discovery

主流注册中心对比

在这里插入图片描述

安装nacos

环境:

  • java 8
  • Maven

解压安装包,直接运行bin目录下的startup.cmd
2.xx版本,需要修改单机版本,然后用命令启动 startup.cmd -m standalone
命令运行成功后直接访问http://localhost:8848/nacos
就是这么简单
在这里插入图片描述

作为服务注册中心

我们新建两个模块
基于nacos的服务提供者集群:cloudalibaba-provider-payment9001
基于nacos的服务提供者集群:cloudalibaba-provider-payment9002

cloudalibaba-provider-payment9001

nacos需要的主要依赖包

    <dependency>
        <groupId>com.alibaba.cloud</groupId>
        <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
    </dependency>
    <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>

核心配置文件

server:
  port: 9001

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

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


配置注意项

  • 一定要导入服务暴露
  • 配置的时候 要加入 nacos的地址

编写一个方法测试

package com.atguigu.springcloud.alibaba.controller;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RestController;


@RestController
public class PaymentController
{
    @Value("${server.port}")
    private String serverPort;

    @GetMapping(value = "/payment/nacos/{id}")
    public String getPayment(@PathVariable("id") Integer id)
    {
        return "nacos registry, serverPort: "+ serverPort+"\t id"+id;
    }
}

主启动类加上注解

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;

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

启动服务,就可以在nacos中看到我们的服务了
在这里插入图片描述
集群另一个模块 参考 9001的编写方式

作为服务配置中心

我们来建一个demo来体验一下,nacos的动态配置
配置模块 :cloudalibaba-config-nacos-client3377

基础配置

导入需要的jar包

<dependencies>
    <!--nacos-config-->
    <dependency>
        <groupId>com.alibaba.cloud</groupId>
        <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
    </dependency>
    <!--nacos-discovery-->
    <dependency>
        <groupId>com.alibaba.cloud</groupId>
        <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
    </dependency>
    <!--web + actuator-->
    <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>
    <!--一般基础配置-->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-devtools</artifactId>
        <scope>runtime</scope>
        <optional>true</optional>
    </dependency>
    <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>

编写配置文件
这里引入一个概念

bootstrap的启动优先级比application高
为了确保我们的nacos上的配置被加载成功

server:
  port: 3377

spring:
  application:
    name: nacos-config-client
  cloud:
    nacos:
      discovery:
        server-addr: localhost:8848 #服务注册中心地址
      config:
        server-addr: localhost:8848 #配置中心地址
        file-extension: yaml #指定yaml格式的配置
        
 

编写一个查看测试信息的controller

package com.atguigu.springcloud.alibaba.controller;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.cloud.context.config.annotation.RefreshScope;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;


@RestController
@RefreshScope
public class ConfigClientController
{
    @Value("${config.info}")
    private String configInfo;

    @GetMapping("/config/info")
    public String getConfigInfo() {
        return configInfo;
    }
}
 

RefreshScope 我们可以使用 cloud的原生注解,来实现动态查看配置刷新,

创建一个nacos上的配置
在这里插入图片描述

nacos 中的配置规则

在这里插入图片描述
之后启动就可以在nacos上更改配置了

nacos配置持久化

我们可以试验一下,配置都时候 nacos是自带了一个嵌入式数据库derby
我们这里可以修改设置,到自己的mysql上
先去nacos的文件夹中找到,nacos的sql的脚本
在这里插入图片描述
导入到mysql中 创建一个数据库 nacos_config
在这里插入图片描述
之后找到application文件
修改配置

spring.datasource.platform=mysql
 
db.num=1
db.url.0=jdbc:mysql://127.0.0.1:3306/nacos_config_tmall?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&serverTimezone=UTC
db.user=root
db.password=root

之后启动nacos ,就会看到全新的naocs 我们之后再创建的各种配置,就会保存在我们自己创建的数据库中

小结

使用过Eureka之后,使用nacos,感受到nacos是十分优秀的一款注册中心,我们可以快速启动,省去了很多的配置,这个技术简化了我们想要使用注册中心和动态配置查看链路需要的繁琐配置,

SpringCloud Alibaba入门简介和Nacos服务注册和配置中心 前面已经把spring cloud相关的组件都一一学了个遍,现在有点小佩服自己…本来计划今天周末好好出去玩一圈,天气太热了,39了都,还是在办公室学习吧,进行下面的springCloud Alibaba 学习吧…不废话了赶快进入正体 1. SpringCloud Alibaba入门简介 1.1 why会出现SpringCloud alibaba? Spring Cloud Netflix项目进入维护模式,spring blog上增加官宣 不争气啊,看到都是我们前面刚学的比较熟悉的啊,hystrix,rib 阅读详情

相关推荐

SpringCloud Alibaba第十二章,升级篇,服务注册与配置中心Nacos

SpringCloud Alibaba第十二章,升级篇,服务注册与配置中心Nacos 一、为什么SpringCloud Alibaba 1、为什么 有了spring cloud这个微服务的框架,为什么又要使用spring cloud alibaba这个框架了?最重要的原因在于spring cloud中的几乎所有的组件都使用Netflix公司的产品,然后在其基础上做了一层封装,同时也新增了一些其...

有一个小阿飞 826

报错驱动式追踪 nacos 服务注册入口代码位置

当项目中遇到了一个新的框架、技术等,我们都是在不了解详细运行机制的基础上各种百度、搜索出一个博客,照搬过来,搭建测试跑通之后,然后深入点,踩了几个坑,通过同样的百度或者经过自己的解决解决后我们觉得我们算是深入了解了,等闲来无事时我们想再深入点,就只能看源码了,比如nacos,配置文件,xxx大概就是告诉工程,nacos注册中心的位置,然后项目启动时向nacos注册中心注册我自己,这也就是为什么在nacos控制台可以看到自己的服务。那如果是在代码层级就像看到在哪里请求nacos注册自己的呢? 打眼一看:

heshiyuan1406146854的博客 1032

【SpringCloud】Spring cloud Alibaba Nacos 服务注册与配置中心

文章目录1.概述1.1 为什么叫Nacos1.2 是什么1.3.地址1.4 区别2.运行3. 服务提供者4. 服务消费者5. 扩展5.1 Nacos支持AP和CP模式的切换5.1.1 何时选择使用何种模式?6. Nacos Config6.1 配置6.2 Nacos中的匹配规则6.3 新建配置6.4 测试 1.概述 官网:https://github.com/alibaba/spring-cloud-alibaba 官网中文文档:https://github.com/alibaba/spring-clou

九师兄 354

SpringCloud使用 Nacos做注册中心 客户端启动报错java.lang.IllegalArgumentException: no server available的解决方案

我的SpringCloud 版本是 Hoxton.SR3 SpringCloud Alibaba的版本是 这是我的父POM里的版本 <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-alibaba-dependencie...

wuyou_1997的博客 2万+

动手学Moveit2|使用配置助手创建自己机械臂的功能包

今天没时间了,先生成功能包,下一步还需要装一些依赖才能运行,明天再补充下面的内容。

生活不止眼前的苟且 1万+

学术版GPT安装教程——保姆版(附带原生GPT注册教程)

学术版GPT图文安装教程

DBenD的博客 2万+

Nacos 作为注册中心的微服务启动报错:NacosException: failed to req API:/nacos/v1/ns/instance after all servers([http

1. 问题描述 最近在尝试使用 Spring Cloud Alibaba 的 Nacos 作为注册中心搭建微服务环境时,微服务启动发生错误,报错如下: 2020-11-16 16:34:40.633 ERROR 10640 --- [ main] c.a.c.n.registry.NacosServiceRegistry : nacos registry, product-service(172.20.139.51:9002) register failed...NacosR

mengyanyuan8023的博客 8215

瑞昱RTL8735B开发板深度评测:如何用200元板子搞定1080P视频流+AI推理?

本文深度评测瑞昱RTL8735B开发板(AMB82 MINI),解析其如何在200元预算内实现1080P视频流处理与边缘AI推理。该板搭载0.4TOPS NPU算力,支持H.264/H.265编码,适合物联网开发者构建高性价比边缘计算方案,并详细介绍了硬件架构、AI模型优化及实战项目搭建。

weixin_33712987的博客 520

分布式项目连接nacos报错:

项目依赖是nacos-client:2.0.3,nacos-serve用了1.4.3,项目启动动报Client not connected,current status:STARTING

qun7559的博客 7478

逆向解析抖音核心校验参数:bd-ticket-guard-client-data的Python生成逻辑

本文深入解析了抖音核心校验参数bd-ticket-guard-client-data的生成逻辑,详细介绍了其动态证书生成、非对称加密机制及Python实现方法。通过逆向分析,揭示了抖音安全体系的双层验证机制,包括RSA密钥对生成、证书签名及时间戳校验等关键技术要点,为开发者提供了一套完整的参数生成解决方案。

weixin_26642481的博客 404

基于FFT的阵列方向图快速计算公式推导

因为自己毕设涉及到阵列方向图综合相关知识,最近阅读了关于方向图综合的相关文献,就其中关于使用FFT计算阵列方向图的方法进行了公式推导。 简介: 自从1965年Colley-Tukey发表快速傅里叶变换[1]论文以来,FFT在许多科学技术领域获得了广泛和成功的应用。在阵列信号处理与雷达信号处理领域,随着科技的发展,对于电尺寸较大的相控阵天线,使用公式按照级数求和计算天线阵列方向图的方法效率甚低,...

qq_38151438的博客 4290

SpringCloud Alibaba Nacos 服务注册和配置中心

介绍SpringCloud Alibaba Nacos 服务注册和配置中心

快乐的小三菊的博客 1177

揭秘AI人工智能中Stable Diffusion的模型微调技巧

Stable Diffusion作为一种强大的文本到图像生成模型,在艺术创作、设计、娱乐等多个领域展现出了巨大的应用潜力。然而,其默认的模型输出可能无法满足特定用户或特定场景的个性化需求。本文章的目的在于深入揭秘Stable Diffusion的模型微调技巧,让读者能够根据自己的需求对模型进行定制化调整,生成符合特定风格、主题或要求的图像。范围涵盖了从基础概念到实际操作,从理论原理到项目实战的全方位内容,旨在为读者提供一个系统且深入的学习指南。

大模型应用工坊 948

SpringCloud Alibaba 之 Nacos 服务注册和配置中心 详解

一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台 Nacos就是 注册中心+配置中心 的组合官网下载Nacos :home (nacos.io)解压安装包,直接运行bin目录下的 startup.cmd命令运行成功后直接访问 http://localhost:8848/nacos

qie ting feng yin的博客 1208

国社科“选题设计论证”部分不再难!用AI快速梳理五大核心板块,轻松撰写出高质量的基金申报书(附AI提示词)

七哥给大家推荐的高校都在用的AI平台——高级学术版专业应用平台,集成了ChatGPT、Claude、Gemini、Grok等Al大模型的PLUS版本平台,包括 ChatGPT-5、4o、o3、4.1、4.5、Gemini 2.5 Pro、Claude 3.7、Claude 4、DeepSeek 满血版、Grok 3 、Grok 4等原生线路,还有国际主流的GPTs学术应用,可以辅助大家高效完成科研和学术写作任务,当然撰写硕博论文,课题、职称论文、国社科、国自然基金本子也是手拿把掐。

智能AI让学术科研更容易 929

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

【Spring Cloud】15.SpringCloud Alibaba Nacos服务注册和配置中心

目录1.简介2.安装2.1 直接gitHub官方下载(但是下载特别慢,可去优快云找一些低一点版本的百度云)2.2 启动3.Nacos作为服务注册中心3.1 新建cloudalibaba-provider-payment90013.1.1 Pom.xml3.1.1.1 父工程Pom.xml3.1.1.2 当前工程Pom.xml3.3.2 application.yml3.3.3 测试3.2 新建cloudalibaba-consumer-nacos-order833.2.1 Pom.xml3.2.2 ap

qq_44859586的博客 1036

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

SpringCloud Alibaba——Nacos服务注册和配置中心

SpringCloud Alibaba——Nacos服务注册和配置中心

weixin_74019079的博客 1530

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

【SpringCloud】Spring Cloud Alibaba Nacos服务注册和配置中心

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录Nacos是什么Nacos的使用安装并运行NacosNacos作为服务注册中心基于Nacos的服务提供者基于Nacos的服务消费者Nacos作为服务配置中心基础配置 Nacos是什么 Nacos:Dynamic Naming and Configuration Service 一个更易于构建云原生应用的动态服务发现,配置管理和服务管理中心 简单来说,Nacos就是注册中心+配置中心的组合,等价于:Nacos = Eur

高朗的博客 680

十四、SpringCloud Alibaba Nacos 服务注册和配置中心

文章目录SpringCloud Alibaba入门简介1. 是什么2. 能干什么3. 怎么玩SpringCloud Alibaba Nacos服务注册和配置中心1. Nacos 简介2. 安装并运行 Nacos3. Nacos作为服务注册中心演示3.1 基于Nacos的服务提供者在父项目中创建 cloud-alibaba-provider-payment9001 生产者服务module1. pom2. 编写 yaml 配置文件3. 编写主启动类和业务类4. 启动测试5. 根据9001新建9002,测试负载均

zhou_zhao_xu的博客 1303

SpringCloud Alibaba微服务 -- Nacos使用以及注册中心和配置中心的应用(保姆级)

nacos注册中心和配置中心

知道的越多 不知道的就越多 1万+

springcloud学习-19 Spring Cloud Alibaba、Nacos服务注册和配置中心【周阳springcloud2020学习笔记】

Spring Cloud Alibaba了解 https://github.com/alibaba/spring-cloud-alibaba/blob/master/README-zh.md Spring Cloud Alibaba 致力于提供微服务开发的一站式解决方案。 此项目包含开发分布式应用微服务的必需组件,方便开发者通过 Spring Cloud 编程模型轻松使用这些组件来开发分布式应用服务。 主要功能: 服务限流降级:默认支持 WebServlet、WebFlux, OpenFeign、Rest

无为萌新 350

至高心法 - SpringCloud Alibaba (二)Nacos 服务注册与配置中心

Nacos 作为服务注册中心 官方文档:https://spring-cloud-alibaba-group.github.io/github-pages/greenwich/spring-cloud-alibaba.html 基于Nacos的服务生产者 1.新建module springcloudalibaba-provider-payment9001

〆、挽风的博客 564

关于Springcloud Alibaba Nacos服务注册和配置中心的使用 小结

1.SpringCloud Alibaba概述 Spring Cloud Alibaba 致力于提供微服务开发的一站式解决方案。此项目包含开发分布式应用微服务的必需组件,方便开发者通过 Spring Cloud 编程模型轻松使用这些组件来开发分布式应用服务。 依托 Spring Cloud Alibaba,只需要添加一些注解和少量配置就可以将 Spring Cloud 应用接入阿里微服务解决方案,通过阿里中间件来迅速搭建分布式应用系统。 上面的官网链接首页大概讲述了Spring...

BAStriver的博客 860

18.SpringCloud Alibaba Nacos服务注册和配置中心

18.SpringCloud Alibaba Nacos服务注册和配置中心 SpringCloud系列文档地址: SpringCloud 进阶之路 一、Nacos简介 1、为什么叫Nacos 前四个字母分别为Naming和Configuration的前两个字母,最后的s为Service 2、Nacos是什么 一个更易于构建云原生应用的动态服务发现,配置管理和服务管理中心; Nacos:Dynamic Naming and Configuration Service; Nacos就是注册中心+配置中心的组合:

weixin_42134712的博客 226
上一篇: http基本概念
下一篇: SpringCloud Alibaba Sentinel服务流控快速入门
冷环渊
博客等级 码龄7年 1130粉丝 176原创
评论 8
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

冷环渊

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值