当前位置: 首页 > news >正文

4.Spring Cloud (Hoxton.SR8) 学习笔记—Nacos微服务治理、Nacos配置管理

本文目录如下:

  • 一、Nacos微服务治理
    • Nacos 下载 与 启动
    • Spring Cloud 集成 Nacos
    • IDEA 同一个 Application 启动多次
    • Nacos - 配置集群
    • Nacos - 设置负载均衡
    • Nacos - 设置服务实例的权重
  • 二、Nacos 配置管理
    • Nacos - 合理的把配置信息迁移到 Nacos 中
    • Nacos - 配置命名规范
    • Nacos - 如何使用 Nacos 配置?

一、Nacos微服务治理

Nacos 下载 与 启动

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

Nacos 下载与启动:

  • F:\ProgramFiles\nacos\bin> .\startup.cmd -m standalone

启动成功:
在这里插入图片描述


Spring Cloud 集成 Nacos

  • 父项目 引入 管理依赖
<!--nacos的管理依赖-->
<dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-alibaba-dependencies</artifactId><version>${cloud-alibabba.version}</version><type>pom</type><scope>import</scope>
</dependency>
  • 子模块 添加 客户端依赖
<!-- nacos 客户端 作为 注册与发现-->
<dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency><!-- nacos 配置中心 -->
<dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency>
  • 子模块application.xml 中添加 配置信息
spring:cloud:nacos:username: nacospassword: nacosserver-addr: 127.0.0.1:8848   # nacos服务地址config:file-extension: yaml # 文件后缀名
  • 启动两个模块, 在Nacos中查看模块注册情况

在这里插入图片描述

IDEA 同一个 Application 启动多次

UserApplication 启动多次, 模拟多实例部署,但为了避免 端口冲突,需要修改端口设置:
添加 VM Option: -Dserver.port=8192
在这里插入图片描述

启动之后, 在 Nacos 中可以看到 同一个服务的 两个实例:
在这里插入图片描述


Nacos - 配置集群

spring:cloud:nacos:discovery:cluster-name: XQZ # 配置集群名称,也就是机房位置,例如:HZ,杭州

Nacos - 设置负载均衡

@SpringBootApplication
@MapperScan("com.tencent.wechat.user.mapper")
public class TencentWechatUserApplication {public static void main(String[] args) {SpringApplication.run(TencentWechatUserApplication.class, args);}/*** 开启负载均衡* @return*/@Bean@LoadBalancedpublic RestTemplate restTemplate() {return new RestTemplate();}/*** Spring Cloud 自带的负载均衡组件: Ribbon* @return*/@Beanpublic IRule randomRule() {return new RandomRule();}}

yml 中添加:

# 设置负载均衡的IRule为 NacosRule,这个规则优先会寻找与自己同集群的服务
user-server:ribbon:NFLoadBalancerRuleClassName: com.alibaba.cloud.nacos.ribbon.NacosRule # 负载均衡规则

Nacos - 设置服务实例的权重

在这里插入图片描述


二、Nacos 配置管理

Nacos - 合理的把配置信息迁移到 Nacos 中

  • 配置信息 迁移到 Nacos 的主要原因是: 能让配置信息 热更新
  • 所以不常改变的 配置 (如 MySQL连接信息) 就没有必要放入到 Nacos 中, 放入 开关类型 的配置。

Nacos - 配置命名规范

服务名.yml

Nacos - 如何使用 Nacos 配置?

    1. 引入依赖
<!-- nacos 配置中心 -->
<dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
</dependency>
http://www.lryc.cn/news/38300.html

相关文章:

  • 卷王都在偷偷准备金三银四了...
  • 【C++的OpenCV】第十二课-OpenCV图像常用操作(九):找到图像的边界(轮廓)findContours()和drawContours()
  • 传奇开服流程—传奇单机架设教程
  • 【GoF 23】篇3:抽象工厂
  • 软考高级信息系统项目管理师系列之三十七:流程管理
  • 【WPS文字-Word】WPS文字设置段落居中对齐后公式左边右边的文字仍然无法跟公式对齐,公式和文字对不齐
  • 英文术语对照
  • CSS 扫盲
  • 【Redis黑马点评】基于session实现登录【短信验证码登录、登录验证功能、拦截器】过程详解
  • 【C++】通过priority_queue、reverse_iterator加深对于适配器和仿函数的理解
  • 网络安全 -- 常见的攻击方式和防守
  • Android中实现滑动的7种方法
  • 【hadoop】介绍
  • 【C语言】有关的经典题型内含数组及递归函数题型讲解(入门适用)
  • MyBatis操作数据库
  • Object.keys(obj)与Object.values(obj)的用法
  • 关于ES6新特性的总结
  • 13. CSS 处理
  • One-hot编码
  • Java中的深克隆与浅克隆
  • 如何使用MyBatis框架实现对数据库的增删查改?
  • 结构体内存大小
  • gerrit操作和jinkens编译合入代码
  • 网络工程师面试题(面试必看)(3)
  • 第N次重装系统之Ubtntu
  • 一个 适用 vue3 ts h5移动端 table组件
  • Vue.js 生产打包上线实战
  • C语言指针的算术运算
  • 快速排序/快速选择算法
  • 【数据结构初阶】单链表面试题|内含链表带环问题