SpringCloud-项目引入Nacos

news/2024/2/21 10:56:45

一、安装Nacos服务

首先,我们需要从 Nacos 的官方网站下载发布版本。下载地址:Releases · alibaba/nacos · GitHub

选择合适的版本并下载,解压缩得到 Nacos 的安装包。 

在解压后的 Nacos 目录中,找到 bin 文件夹。

用写字板编辑 startup.cmd,将 set MODE= "cluster" 修改为:

set MODE=“standalone”

这将在启动 Nacos Server 时,默认使用 standalone 模式运行。

修改完成后,切换 cmd 到 bin 目录下启动 Nacos Server:

C:\Users\Damon.Liu>d:
D:\>cd D:\Tools\Nacos\bin
D:\Tools\Nacos\bin>startup.cmd -m standalone

这里提醒我需要配一个 java8以上 的 JAVA_HOME 环境变量。

简单配一下:

再次尝试启动 Nacos,这次成功了!


二、项目引入Nacos

首先,创建一个带有生产者和消费者的SpringCloud微服务项目:

这里就不重头带大家新建了,可以直接看我这篇文章:SpringCloud-创建多模块项目-CSDN博客

接着对我们 SpringCloud 项目下 每个子项目 引入 Nacos,下面拿 springcloud-provider 这个子项目进行举例,其他子项目改造方法相同:

① pom.xml增加依赖

pom.xml 里增加 Nacos 自动发现的依赖:

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


② 启动类添加自动发现注解

启动类增加自动服务发现的注解 @EnableDiscoveryClient:

package com.example.springcloudprovider;import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;@EnableDiscoveryClient
@SpringBootApplication
public class NacosProviderApplication {public static void main(String[] args) {SpringApplication.run(NacosProviderApplication.class, args);}}


③ 修改 application.yml 配置

修改 application.yml,配置内容修改为:

server:#程序端口号port: 8081
spring:application:#应用名称name: springcloud-providercloud:nacos:discovery:#nacos地址server-addr: 127.0.0.1:8848config:import-check:enabled: false
management:endpoints:web:exposure:#公开所有端点include: '*'

这样 Nacos 服务就可以自动发现这个子项目的服务了。

访问我们的 Nacos 服务地址:localhost:8848/nacos,可以看到控制台的查看已注册服务。


三、测试服务是否注册到Nacos

按照上面服务注册到 Nacos 的方法,把所有需要注册到 Nacos 服务的项目都按照上述方法进行更改,更改完成之后,我们启动所有项目。

访问 Nacos 服务控制台:localhost:8848/nacos

可以看到我们目前的服务都已经注册到 Nacos 里了。


https://www.xjx100.cn/news/3271186.html

相关文章

GreenSock(GSAP)路径动画例子

要使用 GreenSock&#xff08;GSAP&#xff09;实现一个路径动画&#xff0c;您可以使用 GSAP 的 MotionPath 插件来让元素沿着指定的路径移动。以下是一个完整的示例代码&#xff0c;展示了如何使用 GSAP 创建一个路径动画&#xff1a; 首先&#xff0c;确保你已经引入…

用git命令来上传项目到GitHub我自己的仓库

目录 在GitHub上创建仓库并使用git命令上传到仓库的步骤如下&#xff1a; 其他操作 怎么退出git/COMMIT_EDITMSG [unix] 相关报错 error: src refspec main does not match any error: failed to push some refs to https://github.com/Liu22Jun16Liang/MyQt error: fail…

python-分享篇-GUI界面开发-PyQt5-在窗口中弹出等待提示框

代码 # *_* coding : UTF-8 *_* # 文件名称 &#xff1a;waiting_prompt.py # 开发工具 &#xff1a;PyCharmfrom window import Ui_MainWindow # 导入窗体ui类 from PyQt5.QtWidgets import QMainWindow, QApplication # 导入qt窗体类 from PyQ…

Python中Pymysql库的常见用法和代码示例

关注B站可以观看更多实战教学视频&#xff1a;肆十二-的个人空间-肆十二-个人主页-哔哩哔哩视频 (bilibili.com) pymysql是一个用于连接MySQL数据库的Python库&#xff0c;它允许你执行SQL查询并处理返回的结果。以下是pymysql库的一些常见用法和代码示例&#xff1a; 1. 安装…

02.数据结构

一、链表 作用&#xff1a;用于写邻接表&#xff1b; 邻接表作用&#xff1a;用于存储图或树&#xff1b; 1、用数组模拟单链表 #include<iostream> using namespace std;const int N 100010;// head 表示头结点的下标 // e[i] 表示结点i的值 // ne[i] 表示结点i的ne…

面试经典150题——长度最小的子数组

​"In the midst of winter, I found there was, within me, an invincible summer." - Albert Camus 1. 题目描述 2. 题目分析与解析 首先理解题意&#xff0c;题目要求我们找到一个长度最小的 连续子数组 满足他们的和大于target&#xff0c;需要返回的是子数组的…

java对象内部都有哪些东西

普通对象 对象头 markword 占8字节ClassPointer 指针 :-XX userCompressedClassPointrs 为4字节&#xff0c;不开启为 8字节实例数据 引用类型: -XX userCommpressedOops 为4字节&#xff0c;不开启8字节Padding对齐&#xff0c; 8的倍数 数组对象 对象头&#xff1a;markwor…

springboot180基于spring boot的医院挂号就诊系统

医院挂号就诊系统设计与实现 摘 要 传统办法管理信息首先需要花费的时间比较多&#xff0c;其次数据出错率比较高&#xff0c;而且对错误的数据进行更改也比较困难&#xff0c;最后&#xff0c;检索数据费事费力。因此&#xff0c;在计算机上安装医院挂号就诊系统软件来发挥其…