网站首页 > 博客文章 正文
Nacos的基本功能
1.动态配置服务
动态配置服务能够以中心化,外部化,动态化方式管理所有环境的配置,动态配置消除了变更时重新部署应用和服务的需要。
2.服务发现与管理
Nacos支持DNS-based和RPC-based模式的服务发现,Nacos也提供了实时健康检查,以防止将请求发往不健康的主机或者服务实例。
3.动态DNS服务
通过支持权重路由,动态DNS能更轻松的实现中间是负载均衡、更灵活的路由策略、流量控制、简单数据中心内网的简单DNS解析服务
Nacos中文官方网站地址
http://nacos.io/zh-cn/
Nacos Server安装
naocs server依赖于java环境,jdk1.8以上
安装:
https://nacos.io/zh-cn/docs/quick-start.html
默认启动时集群方式,可以在startup.cmd(windows,linux在startup.sh)中配置,set MODE='standalone' //单实例运行,设置成集群的set MODE='cluster'
运行后启动登陆地址:
http://localhost:8848/nacos
账号密码:nacos/nacos
依赖组件版本说明
Spring Cloud Alibaba Version | Sentinel Version | Nacos Version | RocketMQ Version | Dubbo Version | Seate Version |
2.2.5.RELEASE or 2.1.4.RELEASE or2.0.4.RELEASE | 1.8.0 | 1.4.1 | 4.4.0 | 2.7.8 | 1.3.0 |
2.2.3.RELEASE or 2.1.3.RELEASE or 2.0.3.RELEASE | 1.8.0 | 1.3.3 | 4.4.0 | 2.7.8 | 1.3.0 |
2.2.1.RELEASE or 2.1.2.RELEASE or 2.0.2.RELEASE | 1.7.1 | 1.2.1 | 4.4.0 | 2.7.6 | 1.2.0 |
2.2.0.RELEASE | 1.7.1 | 1.1.4 | 4.4.0 | 2.7.4.1 | 1.0.0 |
2.1.1.RELEASE or 2.0.1.RELEASE or 1.5.1.RELEASE | 1.7.0 | 1.1.4 | 4.4.0 | 2.7.3 | 0.9.0 |
2.1.0.RELEASE or 2.0.0.RELEASE or 1.5.0.RELEASE | 1.6.3 | 1.1.1 | 4.4.0 | 2.7.3 | 0.7.1 |
Spring Cloud Version | Spring Cloud Alibaba Version | Spring Boot Version |
Spring Cloud 2020.0 | 2020.0.RC1 | 2.4.2.RELEASE |
Spring Cloud Hoxton.SR8 | 2.2.5.RELEASE | 2.3.2.RELEASE |
Spring Cloud Greenwich.SR6 | 2.1.4.RELEASE | 2.1.13.RELEASE |
Spring Cloud Hoxton.SR3 | 2.2.1.RELEASE | 2.2.5.RELEASE |
Spring Cloud Hoxton.RELEASE | 2.2.0.RELEASE | 2.2.x.RELEASE |
Spring Cloud Greenwich | 2.1.2.RELEASE | 2.1.x.RELEASE |
Spring Cloud Finchley | 2.0.4.RELEASE | 2.0.x.RELEASE |
Spring Cloud Edgware | 1.5.1.RELEASE | 1.5.x.RELEASE |
在Nacos动态新建配置
在java中读取Nacos配置数据
1.配置文件
spring.application.name=nacos_config_test
spring.cloud.nacos.config.server-addr=127.0.0.1:8848
spring.cloud.nacos.config.group=DEFAULT_GROUP
spring.cloud.nacos.config.namespace=f8cd6adf-4820-4fa8-ba72-c5a3834719a9
spring.cloud.nacos.config.name=nacos_config.properties
stephen.name=zhou
stephen.age=28
2.java代码
@RestController
@RefreshScope
@RequestMapping("/nacos")
public class NacosConfigController {
@Value("${stephen.name}")
private String name;
@Value("${stephen.age}")
private String age;
@GetMapping("/getConfigInfo")
public String getConfigInfo(){
return name+","+age;
}
配置中心--数据模型
Nacos数据模型key由三元组唯一确定,NameSpace默认是空串、公共命名空间public、分组默认DEFAULT_GROUP
三元组分别是NameSpace、Group、Service/DataId
加载多配置集
1.保证nameSpace为同一个,Group和DataId可以不同
2.配置如下:
spring.cloud.nacos.config.extension-configs[0].data-id=nacos_config.properties
spring.cloud.nacos.config.extension-configs[0].group=DEV_GROUP
spring.cloud.nacos.config.extension-configs[0].refresh=true
配置中心其他功能
1.配置导出与导入
2.配置克隆功能
3.历史版本(可以进行版本回滚)
4.监听查询,查询哪些客户端正在监听客户端
Nacos服务注册实现
1.依赖
<dependency>
<groupId>com.alibaba.cloudgroupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discoveryartifactId>
<version>2.2.5.RELEASEversion>
dependency>
2.配置文件
spring:
cloud:
nacos:
discovery:
server-addr: 127.0.0.1:8848
3.在启动类中加注解
@EnableDiscoveryClient
4.启动访问
OpenFeign实现服务调用
1.依赖pom
<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-openfeign</artifactId> </dependency>
2.定义Feign接口,生成动态代理对象
@FeignClient("nacos-stock") public interface StockFeignService { @RequestMapping("/stock/test") String test(@RequestParam("info") String info); }
3.启动类
@EnableFeignClients("com.stephen.feign")
多实例服务负载均衡
服务名需要保持一致
spring: application: name: nacos-stock cloud: nacos: discovery: server-addr: 127.0.0.1:8848
Nacos高可用集群
1.为了防止Nacos崩掉,可以搞三个或者三个以上Nacos集群部署,实现高可用
2.在startup.cmd中将model改为cluster集群模式
3.nacos程序文件复制三份,修改三份的端口号nacos\nacos-server-1.1.4\nacos\conf\application.properties中修改
4.在nacos\nacos-server-1.1.4\nacos\conf\application.properties中修改nacos.inetutiles.ip-address=127.0.0.1
5.把集群配置文件cluster.conf.example改为cluster.conf,在文件中配置集群ip和端口号
6.启动三台nacos服务
猜你喜欢
- 2025-01-05 Nacos读取配置文件的顺序
- 2025-01-05 真香系列:聊聊SpringCloud Nacos服务配置中心
- 2025-01-05 IT技术栈——Nacos服务发现基础
- 2025-01-05 香~Spring Boot 应用也可以有注册中心
- 2025-01-05 玩转Nacos参数配置!多图勿点
- 2025-01-05 关于研发规范化的一些实践和思考
- 2025-01-05 Nacos—服务注册中心原理总结
- 2025-01-05 SpringCloud之Nacos作为配置中心
- 2025-01-05 SpringCloud Alibaba的前世今生【面试必看】(5)
- 2025-01-05 Spring AI Alibaba 配置管理,用 Nacos 就够了
你 发表评论:
欢迎- 368℃用AI Agent治理微服务的复杂性问题|QCon
- 364℃手把手教程「JavaWeb」优雅的SpringMvc+Mybatis整合之路
- 358℃初次使用IntelliJ IDEA新建Maven项目
- 351℃Maven技术方案最全手册(mavena)
- 348℃安利Touch Bar 专属应用,让闲置的Touch Bar活跃起来!
- 347℃InfoQ 2024 年趋势报告:架构篇(infoq+2024+年趋势报告:架构篇分析)
- 345℃IntelliJ IDEA 2018版本和2022版本创建 Maven 项目对比
- 343℃从头搭建 IntelliJ IDEA 环境(intellij idea建包)
- 最近发表
- 标签列表
-
- powershellfor (55)
- messagesource (56)
- aspose.pdf破解版 (56)
- promise.race (63)
- 2019cad序列号和密钥激活码 (62)
- window.performance (66)
- qt删除文件夹 (72)
- mysqlcaching_sha2_password (64)
- ubuntu升级gcc (58)
- nacos启动失败 (64)
- ssh-add (70)
- jwt漏洞 (58)
- macos14下载 (58)
- yarnnode (62)
- abstractqueuedsynchronizer (64)
- source~/.bashrc没有那个文件或目录 (65)
- springboot整合activiti工作流 (70)
- jmeter插件下载 (61)
- 抓包分析 (60)
- idea创建mavenweb项目 (65)
- vue回到顶部 (57)
- qcombobox样式表 (68)
- vue数组concat (56)
- tomcatundertow (58)
- pastemac (61)
本文暂时没有评论,来添加一个吧(●'◡'●)