在传统的项目中,一个系统的所有功能都是放在一个项目中,但是微服务是把一些主要的功能给分出来,独立成一个小项目,然后通过一些网络协议把这些小项目给连接起来,然后组成一个完成的项目。比如开发一个商城,传统的做法就是商品搜索,支付等功能都放在一个系统中开发,但是微服务就是商品搜索一个项目,支付一个项目,最后通过网络协议把它合并成一个完成的项目。这样做的好处就是升级好升级,比如,按照传统的做法,假如我们只是想升级支付功能,但是由于都在一个系统中,我们重新部署项目的时候,也需要再把商品搜索部分的代码也部署一遍。但是对于微服务,我们局不一样了,我们只需要把支付功能相关的代码改好,然后把支付能功能部分的项目部署上去就行了,这样就饿可以避免我们在升级支付功能的时候对商品搜过功能部门产生不必要的麻烦。
上图是从spring官网截取的一张图,在SpringBoot上面的单词build,这个意味着我们的每一个微小的服务都是通过springboot建立的,而springClould下面的coordinate意味着一个微服务想要跟另一个微服务产生的联系的时候,就用这个。而SpringCloudDataFlow主要是用来做并行计算的,目前还没有用过,后期有待加强。
用Springboot主要有以下几个优点:
1、简化了j2ee的开发。
2、对整个spring技术栈进行了整合。
3、不仅对spring技术栈进行了整合,甚至可以说是对整个java技术进行了整合,比如我们想要整合redis和mybatis,就可以通过springboot.