微服务治理
认识微服务
单体架构:将业务的所有功能集中在一个项目中开发,打成一个包部署
优点:架构简单、部署成本低
缺点:耦合度高、
分布式架构:根据业务功能对系统进行拆分,每个业务模板作为独立项目开发,称为一个服务
优点:降低服务耦合、有利于服务升级拓展
微服务:一种经过良好架构设计的分布式架构方式,微服务架构特征:
单一职责:微服务拆分粒度更小,每一个服务都对应唯一的业务能力,做到单一职责,避免重复业务开发
面向服务:微服务对外暴露业务接口
自治:团队独立、技术独立、数据独立、部署独立
隔离性强:服务调用做好隔离、容错、降级、避免出现级联问题
微服务:一种良好的分布式架构方案
优点:拆分粒度更小、服务更独立、耦合度更低
缺点:架构非常复杂,运维、监控、部署难度提高
微服务结构
SpringCloud
spring cloud集成了各种微服务功能组件,基于SpringBoot实现了这些组件的自动装配,提供了良好的开箱即用
服务拆分即远程调用
服务拆分注意事项:
1. 不同微服务,不要重复开发相同的业务
2. 微服务数据独立,不要访问其他微服务的数据库
3. 微服务可以将自己的业务暴露为借口,共其他微服务调用
总结
1.微服务需要根据业务模块拆分,做到单一职责,不要重复开发相同业务
2.微服务可以将业务暴露为接口,供其他微服务使用
3.不同微服务都应该有自己独立的数据库
1.微服务调用方式:
基于RestTemplate发送的HTTP请求实现远程调用
HTTP请求做远程调用是与语言无关的调用,只要知道对象的ip、端口、接口路径、请求参数等
提供者与消费者
服务提供者(user-service):一次业务中,被其他微服务的服务调用。(提供接口给其他微服务)
服务消费者(order-service):一次业务中,调用其他微服务的服务。(调用其他微服务提供的接口)
一个服务既可以是消费者也可以是提供者,提供者与消费者角色是相对的,相对业务
标签:调用,服务,Spring,业务,独立,概念,拆分,架构,Cloud From: https://www.cnblogs.com/wjw1024/p/17153864.html