| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> Java知识库 -> Spring cloud alibaba ——Nacos(二) -> 正文阅读 |
|
[Java知识库]Spring cloud alibaba ——Nacos(二) |
Nacos配置文件的Namespace、Group、DataId
使用dataId切换环境bootstrap.yml
application.yml
如果需要切换环境,在Nacos平台添加两组配置文件:
使用group切换环境新建dev和test两个环境的配置文件,给bootstrap.yml配置如下
application.yml如下:
使用Namespace切换环境打开Nacos操作平台: bootstarp.yaml添加配置:
总结使用Namespace、gorup、dataId切换环境就好像给了用户一个三层的文件夹,当一个项目拥有多个配置文件****.yaml过多时,便可以将一组拥有共同的特点的服务规划到一个group中,当微服务数量不断增多,分组也不够使用时,可以根据地区或者环境来划分命名空间,从而使环境管理更加有条理,切换起来更加方便。 Nacos持久化配置Nacos作为微服务架构中关键的组件之一,担任着服务注册和配置中心的角色,在实际应用中,Nacos的部署也会按照分布式部署,通过Nginx轮询后将请求分配置至不同的节点,进行处理,如果Nacos一直使用自带的嵌入式数据库——derby,就会造成一致性问题,因此,Nacos采用了集中存储方式来支持集群化部署,支持Mysql数据库。
Nacos集群部署准备工作
Linux服务器上初始化Mysql同上述持久化步骤(三个服务都要修改配置),运行sql脚本,修改配置文件,注意,配置文件需要备份。
修改Nacos的集群配置文件cluster.conf安装三个Nacos服务,并且修改其mysql配置,然后修改其cluster.conf,修改时注意:首先进行备份
由于在运行时,Linux服务会有几个端口进行GRPC的通讯,所以在设置集群端口号的时候,需要有一定的数据偏移量。 三个服务的conf/application.properties设置端口
启动测试启动三个nacos服务
注意关闭Linux系统防火墙
于是,进入nacos控制台,集群管理->节点列表,可以看到三个服务集群的情况: 启动Nginx
配置文件设置如下:
由于nacos在远程过程调用中使用的是TCP协议,所以在配置nginx时,也使用相关的转发协议。 测试启动访问控制台时候,访问地址:192.168.20.68:81/nacos
Nacos核心功能点服务注册Nacos Client会通过发送REST请求的方式向Nacos Server注册自己的服务,提供自身的元数据,比如ip地址、端口等信息。Nacos Server接收到注册请求后,就会把这些元数据信息存储在一个双层的内存Map中。 服务心跳、服务健康检测服务心跳:在服务注册后,Nacos Client会维护一个定时心跳来持续通知Nacos Server,说明服务一直处于可用状态,防止被剔除。默认5s发送一次心跳。 服务健康检查:Nacos Server会开启一个定时任务用来检查注册服务实例的健康情况,对于超过15s没有收到客户端心跳的实例会将它的healthy属性置为false(客户端服务发现时不会发现),如果某个实例超过30秒没有收到心跳,直接剔除该实例(被剔除的实例如果恢复发送心跳则会重新注册) 服务发现服务消费者(Nacos Client)在调用服务提供者的服务时,会发送一个REST请求给Nacos Server,获取上面注册的服务清单,并且缓存在Nacos Client本地,同时会在Nacos Client本地开启一个定时任务定时拉取服务端最新的注册表信息更新到本地缓存 服务同步Nacos Server集群之间会互相同步服务实例,用来保证服务信息的一致性。 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/23 16:33:03- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |