Nacos注册中心

Nacos

安装

https://nacos.io/zh-cn/

源码安装

第一步:利用Gitee获取nacos在github上的代码到自己的gitee仓库中

在这里插入图片描述

https://github.com/alibaba/nacos.git

第二步:下载源码到本地。

第三步:使用maven编译代码。

# 先切换到master分支
git checkout master
# 使用如下命令编译源码
mvn -Prelease-nacos -Dmaven.test.skip=true -Drat.skip=true clean install -U

第四步:编译好的内容在distribution目录下

在这里插入图片描述

在这里插入图片描述

第五步:把zip文件放到其他目录中,并解压。

在这里插入图片描述

第六步:修改配置conf目录下的配置文件,添加secretkey。
在这里插入图片描述

nacos.core.auth.plugin.nacos.token.secret.key=SecretKey012345678901234567890123456789012345678901234567890123456789

第七步:启动nacos F:\env\nacos\bin目录下

startup.cmd -m standalone

Nacos环境测试

https://nacos.io/zh-cn/docs/v2/quickstart/quick-start.html

#服务注册
curl -X POST 'http://127.0.0.1:8848/nacos/v1/ns/instance?serviceName=nacos.naming.serviceName&ip=20.18.7.10&port=8080'#服务发现
curl -X GET 'http://127.0.0.1:8848/nacos/v1/ns/instance/list?serviceName=nacos.naming.serviceName'#发布配置
curl -X POST "http://127.0.0.1:8848/nacos/v1/cs/configs?dataId=nacos.cfg.dataId&group=test&content=HelloWorld"#获取配置
curl -X GET "http://127.0.0.1:8848/nacos/v1/cs/configs?dataId=nacos.cfg.dataId&group=test"

Nacos服务的注册与发现

https://nacos.io/zh-cn/

https://nacos.io/zh-cn/docs/quick-start-spring-cloud.html

父POM

注意版本号的选取。

    <packaging>pom</packaging><properties><spring.cloud-version>Hoxton.SR10</spring.cloud-version><springboot-version>2.2.9.RELEASE</springboot-version><spring.cloudalibaba-version>2.2.9.RELEASE</spring.cloudalibaba-version></properties><dependencyManagement><dependencies><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-dependencies</artifactId><version>${spring.cloud-version}</version><type>pom</type><scope>import</scope></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-dependencies</artifactId><version>${springboot-version}</version><type>pom</type><scope>import</scope></dependency><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-alibaba-dependencies</artifactId><version>${spring.cloudalibaba-version}</version><type>pom</type><scope>import</scope></dependency></dependencies></dependencyManagement>

模块 provider

微服务模块中引入nacos依赖

<dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>

yml配置

server:port: 8070
spring:application:name: service-provider  #服务名称cloud:nacos:discovery:server-addr: 127.0.0.1:8848  #nacos注册中心的地址

启动类NacosProviderApplication

@SpringBootApplication
@EnableDiscoveryClient  // 注册到nacos中
public class NacosProviderApplication {public static void main(String[] args) {SpringApplication.run(NacosProviderApplication.class, args);}}
    @RestControllerpublic class EchoController {@Value("${server.port}")private Integer port;@RequestMapping(value = "/echo/{string}", method = RequestMethod.GET)public String echo(@PathVariable String string) {return "Hello Nacos Discovery: "+port+"--->" + string;}}

在这里插入图片描述

模块 consumer

pom文件与producer一致

server:port: 8090
spring:application:name: service-consumercloud:nacos:discovery:server-addr: 127.0.0.1:8848

启动类NacosConsumerApplication

@SpringBootApplication
@EnableDiscoveryClient  // 注册到nacos中  不管是消费者还是提供者,都是这个注册到nacos中
public class NacosConsumerApplication {@LoadBalanced@Beanpublic RestTemplate restTemplate() {return new RestTemplate();}public static void main(String[] args) {SpringApplication.run(NacosConsumerApplication.class, args);}}
    @RestControllerpublic class TestController {private final RestTemplate restTemplate;@Autowiredpublic TestController(RestTemplate restTemplate) {this.restTemplate = restTemplate;}@RequestMapping(value = "/echo/{str}", method = RequestMethod.GET)public String echo(@PathVariable String str) {return restTemplate.getForObject("http://service-provider/echo/" + str, String.class);}}

Nacos服务配置中心

https://nacos.io/zh-cn/docs/quick-start-spring-cloud.html

POM文件

<dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId></dependency><dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId></dependency></dependencies>

yml配置文件

文件名为:bootstrap.yml

spring:application:name: config-democloud:nacos:server-addr: 127.0.0.1:8848config:group: mygroupfile-extension: yamlprofiles:active: dev

Nacos配置中心添加服务配置

在这里插入图片描述

在这里插入图片描述

注意需要在bootstrap配置文件中声明nacos中使用的配置文件的扩展名

spring.cloud.nacos.config.file-extension=yaml
spring:application:name: config-demo #跟配置的前缀名字cloud:nacos:server-addr: 127.0.0.1:8848config:file-extension: yamlprofiles:active: test #跟配置的后缀 设备名匹配

如果需要指定配置文件的分组,如下

spring.cloud.nacos.config.group=dev
.cloud.nacos.config.file-extension=yaml
spring:application:name: config-demo #跟配置的前缀名字cloud:nacos:server-addr: 127.0.0.1:8848config:file-extension: yamlprofiles:active: test #跟配置的后缀 设备名匹配

如果需要指定配置文件的分组,如下

spring.cloud.nacos.config.group=dev

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/109513.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

3 分钟,带你了解低代码开发

一、低代码平台存在的意义 传统软件开发交付链中&#xff0c;需求经过3次传递&#xff0c;用户→业务→架构师→开发&#xff0c;每一层传递都可能使需求失真&#xff0c;导致最终交付的功能返工。 业务的变化促使软件开发过程不断更新、迭代和演进&#xff0c;而低代码开发即是…

vi/vim编辑器

vi和vim区别 vi 和 vim 是常见的文本编辑器&#xff0c;以下是它们之间的区别&#xff1a; 功能和特性&#xff1a; vi 是最早的版本&#xff0c;是在早期Unix系统中广泛使用的编辑器。vi 相对较简单&#xff0c;功能主要集中在基本的文本编辑操作上&#xff0c;如插入、删除、…

Python二级 每周练习题18

练习一: 从键盘输入任意字符串&#xff0c;按照下面要求分离字符串中的字符: 1、分别取出该字符串的第偶数位的元素(提醒注意:是按照从左往右数的方式确定字符串的位置) 2、并依次存储到一个列表中; 3、输出这个列表。 答案: ninput(请输入任意字符串:) #创建变量n存放用户…

TGA格式文件转材质

今天淘宝上买了一个美女的模型&#xff0c;是blender的源文件&#xff0c;上面说有fbx格式的。我用unity&#xff0c;所以觉得应该可以用。文件内容如下图&#xff1a; FBX文件夹打开后&#xff0c;内容如下图所示&#xff0c;当时就预感到可能没有色彩。 unity打开后果然发现只…

vue3+scss开启写轮眼

vue3scss开启写轮眼 一、相关技术二、使用步骤1.安装依赖2.眼球3 勾玉4 旋转动画5 综合 一、相关技术 采用vue3vitescss的技术内容进行开发 二、使用步骤 1.安装依赖 代码如下&#xff1a; npm install sass2.眼球 首先我们根据需要 将眼睛的基础形状描绘出来&#xff0c…

Java-day14(多线程)

多线程 0.基本概念 程序&#xff1a;为完成特定任务&#xff0c;用某种编程语言编写的一组指令的集合&#xff08;静态&#xff09; 进程&#xff1a;程序的一次执行过程&#xff0c;或正在执行的一个程序&#xff08;动态过程&#xff09; 线程&#xff1a;程序内部的一条…

CSS文字居中对齐学习

CSS使用text-align属性设置文字对齐方式&#xff1b;text-align:center&#xff0c;这样就设置了文字居中对齐&#xff1b; <!DOCTYPE html> <html><head><meta charset"UTF-8"><title>css 水平居中</title><style>.box …

Truenas scale 初始化设置

Truenas 安装 官网下载镜像Rufu刻录镜像实体机安装 参考 司波图YouTube, 张先生的深夜课堂&#xff0c; 小曾和他的朋友们 。 设置 设置时区 System setting -> General -> Localization 设置固定路由器IP Network -> Interface 中点击已经获取到路由器分配的 I…

Java版企业电子招标采购系统源码—企业战略布局下的采购寻源

功能模块&#xff1a; 待办消息&#xff0c;招标公告&#xff0c;中标公告&#xff0c;信息发布 描述&#xff1a; 全过程数字化采购管理&#xff0c;打造从供应商管理到采购招投标、采购合同、采购执行的全过程数字化管理。通供应商门户具备内外协同的能力&#xff0c;为外部供…

计算机专业毕业设计项目推荐06-工作室管理系统(Java+Vue+Mysql)

工作室管理系统&#xff08;JavaSpringVueMysql&#xff09; **介绍****系统总体开发情况-功能模块****各部分模块实现****最后想说的****联系方式** 介绍 本系列(后期可能博主会统一为专栏)博文献给即将毕业的计算机专业同学们,因为博主自身本科和硕士也是科班出生,所以也比较…

D3JS简介

D3JS 什么是D3js D3.js是一个流行的JavaScript数据可视化库&#xff0c;它提供了一系列的API和工具&#xff0c;用于创建交互式的数据图表、地图等可视化效果。以下是一些D3.js的特点和用途&#xff1a; 数据驱动&#xff1a;D3.js基于数据驱动的思想&#xff0c;将数据和视觉…

JavaSE、JavaEE与Spring的概念和异同点剖析以及规范13 个分析

JavaSE、JavaEE与Spring的概念和异同点剖析以及规范13 个分析 目录概述需求&#xff1a; 设计思路实现思路分析1.什么是JavaSE2.是JavaEE3.什么是Spring 参考资料和推荐阅读 Survive by day and develop by night. talk for import biz , show your perfect code,full busy&…