1-单体应用架构
优点:开发简单,适用于小型应用
缺点:不易拓展,维护,代码耦合
2-垂直应用架构
优点:解决高并发问题,针对不同的模块优化,方便水平扩展,容错
缺点:系统间相互独立,重复开发工作
3-分布式SOA架构
优点: 抽取公共的功能为服务,提高开发效率
对不同的服务进行集群化部署解决系统压力
基于ESB/Dubbo减少系统耦合
缺点: 抽取服务的粒度较大
服务提供方与调用方借口耦合度较高
SOA:面向服务的架构.可以根据需求通过网络对松耦合的粗粒度应用组件(服务)进行分布式部署,组合和使用.一个服务通常以独立的形式存在于操作系统进程中.
特点:分布式,可重用,扩展灵活,松耦合
4-微服务架构
优点: 通过服务的原子化拆分,以及微服务的独立打包,部署和升级,小团队的运营成本将缩短,运维成本也将大幅度下降
微服务遵循单一原则,微服务之间采用restful等轻量协议传输
缺点: 微服务过多,服务治理成本高,不利于系统维护
分布式系统开发的技术成本高(容错,分布式事务等)
SOA与微服务的关系
SOA:面向服务的架构,它是一种设计方法,其中包含多个服务,服务之间通过相互依赖最终提供一系列的功能.一个服务通常以独立的形式存在于操作系统进程中.各个服务之间通过网络调用.
微服务架构:强调的重点是业务需要彻底的组件和服务化.原有的单个业务系统会拆分成多个可独立开发,设计,运行的小应用,这些小应用之间通过服务完成交互和集成.
标签:SOA,服务,演变,springcloud,应用,耦合,架构,分布式 From: https://blog.51cto.com/u_12528551/5900179