织梦网站栏目设计山东省城乡建设厅网站
前言
配置主要有以下特点:
独立于程序的只读变量
伴随应用的整个生命周期
配置可以有多种加载方式
配置需要治理
建立配置中心之后:

Nacos的功能:


OPEN API配置管理地址
服务注册:
curl -X POST
'http://127.0.0.1:8848/nacos/v1/ns/instance?serviceName=nacos.naming.serviceName&ip=20.18.7.10&port=8080'
服务发现:
curl -X GET
'http://127.0.0.1:8848/nacos/v1/ns/instance/list?serviceName=nacos.naming.serviceName'
发布配置:
curl -X POST
"http://127.0.0.1:8848/nacos/v1/cs/configs?dataId=nacos.cfg.dataId&group=test&content=HelloWorld"
获取配置:
curl -X GET "http://127.0.0.1:8848/nacos/v1/cs/configs?dataId=nacos.cfg.dataId&group=test
服务的演变:




微服务的优缺点:
优点:① 每个服务足够小,足够内聚,专注于一个业务功能点提供服务。代码更容易理解。② 有代码修改或部署上线,只会影响对应的微服务,而不会影响整个服务。③ 可针对服务是CPU型还是IO型进行针对性的硬件升级。④ 可以针对某些高吞吐服务进行硬件升级或者服务横向扩容,而不是对所有服务都升级,节约投入成本。
缺点:① 极大的增加了运维的工作量,以前几个war包,现在可能需要部署几百个。② 微服务之间的互相调用,会增加通信成本。③ 分布式事务问题会引出数据一致性的问题。④ 服务增多,如果管控成百上千的服务,如何准确并快速定位系统问题。
SOA与微服务的区别
SOA关注的是服务的重用性及解决信息孤岛问题。
微服务关注的是解耦,虽然解耦和可重用性从特定的角度来看是一样的,但本质上是有区别的:① 解耦:降低业务之间的耦合度。② 重用性:关注的是服务的复用。 微服务会更多地关注在DevOps的持续交付上,因为服务粒度细化之后使得开发运维变得更加重要,因此微服务与容器化技术的结合更加紧密。

日志追踪tranceID
服务发现
在传统的系统部署中, 服务运行在一个固定的 已知的IP和端口上,如 果一个服务需要调用另 一个服务,那么可以通 过地址直接调用。但是, 在虚拟化或者容器化的 环境中,服务实例的启 动和销毁是很频繁的, 那么服务地址也是在动 态变化的。这种情况下, 就需要服务发现机制了

服务发现有两种方式:1客户端服务发现; 2服务端服务发现


