微服务架构
内容纲要
系统架构的演变
SOA
SOA全称为Service-Oriented Architecture ,即面向服务的架构。它可以根据需求通过网络对松散耦合的粗粒度应用组件(服务)进行分布式部署、组合和使用。-一个服务通常以独立的形式存在于操作系统进程中。
站在功能的角度,把业务逻辑抽象成可复用、可组装的服务,通过服务的编排实现业务的快速再生,目的:把原先固有的业务功能转变为通用的业务服务,实现业务逻辑的快速复用。
通过上面的描述可以发现SOA有如下几个特点王分布式。可重用、扩展灵活.松耦合
优点 :
- 抽取公共的功能为服务,提高开发效率
- 对不同的服务进行集群化部署解决系统压力
- 基于ESB/DUBBO减少系统耦合
缺点 : - 抽取服务颗粒度大
- 服务提供方与调用方接口耦合度较高
微服务架构
核心 : 尽可能的拆分服务层
优点 : - 通过对服务的原子化拆分,以及微服务的独立打包,部署和升级,小团队的交付周期将缩短,运维成本也大幅度下降
- 微服务遵循单一原则 微服务之间采取Restful等轻量化协议传输
缺点 : - 微服务过多.服务治理成本高,不利于系统维护
- 分布式系统开发的技术成本高(容错、分布式事务等)
核心概念
远程调用技术
流行的调用技术 : RPC,http
RPC
HTTP相对更规范,更标准,更通用,无论哪种语言都支持http协议。
RPC 框架作为架构微服务化的基础组件,它能大大降低架构微服务化的成本,提高调用方与服务提
供方的研发效率,屏蔽跨进程调用函数(服务)的各类复杂细节。CAP
分布式架构评判标准 : 一致性 可用性 分区容忍性 -----一般选取两项来衡量
共有 0 条评论