SpringCloudAlibaba Nacos配置及应用

Nacos搭建及配置

nacos本机服务搭建

windows上搭建单机nacos:

Releases · alibaba/nacos · GitHub 下载安装包

下载本地,解压,直接运行(保证安装包的绝度路径只有英文字符,有中文会导致运行失败):

打开浏览器访问 http://localhost:8848/nacos/

docker安装nacos

docker run -d --env MODE=standalone --name nacos -v /Users/wangpei/2024/mydata/nacos/conf:/home/nacos/conf -p 8848:8848 nacos/nacos-server:1.4.2

出现这个问题因为没有对应文件,将下载的压缩包中的配置文件上传到容器对应目录下

重新启动容器,运行成功:

查看容器IP,使用命令

docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' container_name_or_id

docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' nacos

这是内网IP,我们已经做过端口映射,直接本机访问即可:

本机地址192.168.1.4,ip访问

Nacos服务注册中心

如果启动后提示失败,异常信息是没有定义用于loadbalance负载均衡的Feign Client:

bash 复制代码
Caused by: java.lang.IllegalStateException: No Feign Client for loadBalancing defined. Did you forget to include spring-cloud-starter-loadbalancer?

引入loadbalance依赖重新clean install

之后可以在nacos看到注册的服务:

Nacos服务配置中心

命名空间

首先在nacos上查看有哪些命名空间,可为对应的服务配置对应的命名空间:

默认如下:

手动添加多个namespace:

配置分组

在指定的命名空间(这里以order模块举例)下添加配置文件:

配置内容如下:

在代码里配置这个参数,并添加接口访问:

修改nacos配置,可以实时生效

可以根据环境配置多个分组,这里配置dev/prod进行测试:

dev配置如下:

修改bootstrap.properties指定分组为dev,重启服务访问接口:

配置拆分

bootstrap.properties首先被加载,读取nacos的配置文件。之后加载application.yml中此服务模块独有的配置,可以将配置进行拆分,更好维护,例如将datasource、 mybatis配置文件进行拆分:

相关推荐
老郑聊AI业财智造3 分钟前
Spring AI 技术架构与源码分析
java·人工智能·后端·spring·架构·软件工程
程序员与背包客_CoderZ4 分钟前
高性能分布式KV存储引擎RocksDB入门与C/C++编码实战
c语言·开发语言·数据库·c++·分布式·分布式数据库·rocksdb
省长9 分钟前
别人绕过我的网关直接调用资源服务怎么办?使用 Sa-Token 解决:网关转发鉴权、RPC调用鉴权
java·后端·开源
MetaLite10 分钟前
SpringBoot异常处理-到底该转换还是继续抛-入口层与调用层不能一刀切
java·spring boot·后端
钱栈up14 分钟前
Mac 开发机一键发版不用切环境:我这样改造了团队的后端部署脚本Maven编译卡住20分钟?我靠两步定位到2处隐蔽编译错误
开发语言·python·macos
william_yangshun18 分钟前
【大模型部署实战】kimi-k3-in-c 中文版:用 176KB 纯 C99 引擎在 CPU 上跑 Kimi K3 上手指南
c语言·开发语言
Sagittarius_A*27 分钟前
Burst Lab | PHP 审计 14|反序列化(四):字符串逃逸与绕过技巧
开发语言·安全·php·web·反序列化
名字还没想好☜38 分钟前
Go 用 slices/maps 标准库泛型函数:告别手写 Contains、Sort、去重(Go 1.21)
开发语言·后端·算法·golang·go
淼澄研学1 小时前
Python实战:基于LangChain与Chroma构建企业级RAG知识库问答系统
开发语言·python·langchain
赵广陆1 小时前
Spring AI的聊天模型
java·人工智能·spring