微服务架构

内容纲要

系统架构的演变

SOA

SOA全称为Service-Oriented Architecture ,即面向服务的架构。它可以根据需求通过网络对松散耦合的粗粒度应用组件(服务)进行分布式部署、组合和使用。-一个服务通常以独立的形式存在于操作系统进程中。
站在功能的角度,把业务逻辑抽象成可复用、可组装的服务,通过服务的编排实现业务的快速再生,目的:把原先固有的业务功能转变为通用的业务服务,实现业务逻辑的快速复用。
通过上面的描述可以发现SOA有如下几个特点王分布式。可重用、扩展灵活.松耦合

优点 :

  • 抽取公共的功能为服务,提高开发效率
  • 对不同的服务进行集群化部署解决系统压力
  • 基于ESB/DUBBO减少系统耦合
    缺点 :
  • 抽取服务颗粒度大
  • 服务提供方与调用方接口耦合度较高

    微服务架构

    核心 : 尽可能的拆分服务层

    优点 :

  • 通过对服务的原子化拆分,以及微服务的独立打包,部署和升级,小团队的交付周期将缩短,运维成本也大幅度下降
  • 微服务遵循单一原则 微服务之间采取Restful等轻量化协议传输
    缺点 :
  • 微服务过多.服务治理成本高,不利于系统维护
  • 分布式系统开发的技术成本高(容错、分布式事务等)

    核心概念

    远程调用技术


    流行的调用技术 : RPC,http

    RPC


    HTTP相对更规范,更标准,更通用,无论哪种语言都支持http协议。
    RPC 框架作为架构微服务化的基础组件,它能大大降低架构微服务化的成本,提高调用方与服务提
    供方的研发效率,屏蔽跨进程调用函数(服务)的各类复杂细节。

    CAP

    分布式架构评判标准 : 一致性 可用性 分区容忍性 -----一般选取两项来衡量

THE END
分享
二维码
< <上一篇
ES6
下一篇>>