Nacos学习

Nacos特性

Nacos主要提供以下四大功能:
(1)服务发现与服务健康检查
Nacos使服务更容易注册,并通过DNS或者HTTP接口发现其他服务,Nacos还提供服务的实时健康检查,以防止向不健康的主机或者服务实例发送请求。
(2)动态配置管理
动态配置服务允许您在所有环境中以集中和工台的方式管理所有服务的配置。Nacos消除了在更新配置时重新部署应用程序,这使得配置的修改更加高效和灵活。
(3)动态DNS服务
Nacos提供基于DNS协议的服务发现能力,旨在支持异构语言的服务发现,支持将注册在Nacos上的服务以域名的方式暴露断点,让三方应用方便的查阅和发现。
(4)服务和元数据管理
Nacos能让您从微服务平台建设的视角管理数据中心的所有服务及元数据,包括管理服务的描述、生命周期、服务的静态依赖分析、服务的健康状态、服务的流量管理、路由及其安全策略。

Nacos配置管理模型

配置集(Data ID):在系统中,一个配置文件通常就是一个配置集,一个配置集可以包含系统的各种配置信息,例如,一个配置集可能包含了数据源、线程池、日志级别等配置项。每个配置集都可以定义一个有意义的名称,就是配置集的ID即Data ID。
配置项:配置集中包含的一个个配置内容就是配置项。它代表一个具体的可配置的参数与其值域,通常以key=value的形式存在。例如我们常配置系统的日志输出级别(LogLevel=INFO | WARN | ERROR)就是一个配置项。

配置分组(Group):配置分组是对配置集进行分组,通过一个有意义的字符串来表示。不同的配置分组下可以有相同的配置集(Data ID)。当您在Nacos上创建一个配置时,如如果为填写配置分组的名称,则配置分组的名称默认采用DEFAULT_GROUP。配置分组的常见场景:可用于区分不同的项目或应用。

命名空间(Nmaespace):命名空间(namespace)可用于进行不同环境的配置隔离。例如可以隔离开发环境、测试环境和生产环境,因为他们的配置可能各不相同,或者是隔离不同的用户,不同的开发人员使用同一个nacos管理各自的配置,可以通过namespace隔离。不同的命名空间下,可以存在相同名称的配置分组(Group)或者配置集。

单体架构

(1)Web应用程序发展的早期,大部分web工程师将所有的功能模块打包到一起并放在一个web容器中运行,所有功能模块使用同一个数据库,同时,它还提供API或者UI访问的web模块等。尽管也是模块化逻辑,但是最终它还是会打包并部署为单体式应用,这种将所有功能部署在一个web容器中运行的系统就叫作单体架构。
(2)单体架构的好处:
开发效率高,模块之间采用本地方法调用,并节省微服务之间的交互讨论时间与开发成本。
容易测试:IDE都是为开发单个应用设计的、容易测试,在本地就可以启动完整的系统。
容易部署:运维成本低,直接打包为一个完整的包,拷贝到容器的某个目录即可运行。
(3)单体架构的缺点:
复杂性逐渐变高,可维护性逐渐变差:所有业务模块部署在一起,复杂度越来越高,修改时牵一发而动全身。
版本迭代速度变慢:修改一个地方叫就要将整个应用全部编译、部署、启动时间过长、回归测试周期过长。
阻碍技术创新:若更新技术框架,除非你愿意将系统全部重写,无法实现部分技术更新。
无法按需伸缩:通过冗余部署完整应用的方式来实现水平扩展,无法针对某业务按需伸缩。

微服务架构

每一个业务模块都使用独立的服务完成,这种微服务架构模式也影响了应用和数据库之间的关系,不像传统多个业务模块共享同一个数据库,微服务架构每个服务都有自己的数据库。
微服务架构的好处:
(1)分为治之,职责单一;易于开发、理解和维护、方便团队的拆分和管理。
(2)可伸缩;能够单独的对指定的服务进行伸缩。
(3)局部容易修改,容易替换,容易部署,有利于持续集成和快速迭代。
(4)不会受限于任何技术栈。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值