Spring Cloud学习之-什么是Spring Cloud?
SpringCloud 什么是微服务? 要想学习微服务,首先需要知道什么是微服务?为什么会有微服务?相信看完架构的发展史读者就会明白 架构发展史 单体应用架构 如图所示:将所有的模块,所有内容(页面、Dao、Service、Controller)全部写入一个项目中,放在一个Tomcat容器中启动 适用于小型项目 优点:开发速度快,可以利用代码生成工具快速的开发一个项目 缺点:不易扩展,代码耦合度高,且不容错(当某部分出错后整个服务就会停止运行) 垂直架构 既然原来单体架构中代码耦合度高,不利于维护和运行,人们自然就想到将不同的内容分开。最简单合理的方式就是将系统按照功能划分成不同的模块,然后将各模块独立放入不同的Web容器中,这就形成了垂直架构 优点:代码耦合度降低,且不同模块之间可以独立运行。一旦某个模块压力过大,可以针对性的搭集群 缺点:模块之间有可能不是那么完全独立,导致实体类或者其他层代码不能复用,需要多出粘贴,不方便日后维护。如果直接通过HTTP调用又不是很合理。 分布式架构/分布式SOA架构 分布式架构顾名思义就是分散部署在不同的机器上的服务,一个服务可能负责几个功能,是一种面向SOA架构的,服务之间也是通过rpc来交互或者是webservice来交互的架构。从开发的角度看就是Controller层(服务消费者)和Service层(服务提供者)分成不同的项目