微服务:
微服务是一种架构风格,一般说到微服务都会说“微服务架构”,即一个系统的各个功能(如结账,用户等)独立出来,以及各个服务独立出来,每个模块是可独立替换、可独立升级的软件单元,每个模块间以Http 的方式进行沟通。
百度百科解释如下:
传统架构:
传统应用即单体应用(All In One)
举例:browser -> servlet容器(Apache等)-> war -> database
缺点:牵一发而动全身,日益增加的软件需求导致不可能将所有的软件功能全部集中到一个应用中。
两者对比及总结:
显然微服务架构在如今是必然由于传统单体应用的,那既然每个服务、每个功能单元已经独立出来,那每个功能单元必然涉及到各种场景,如果每个功能单元都按照传统模式搭建,比如存储模块采用 Spring + Mybatis,那就必须写相关配置文件,比如显示模块采用 SpringMVC + Spring 那又得需要写相关的配置文件,这样无论是时间、人力、物力,消耗都是非常巨大的。因此SpringBoot 应运而生,SpringBoot 只需要极少的配置甚至不需要配置就可以快速构建、启动一个Spring 应用,而应用与应用之间采取 Spring Cloud 互调(分布式),分布式之间的流计算、批处理等采用Spring Cloud Data Flow 解决。