手记

Spring Cloud的介绍以及环境搭建


一、Spring Cloud的介绍

1.1、单体应用

说到Spring Cloud 笔者在这里就不得不Java Web的单体应用,下图是,Java Web 开发过程中的一个单体应用开发的架构:


1.2、单体应用的弊端

如上图所示,这样的单体应用是存在如下弊端的:

1、随着web应用的业务逻辑的日益复杂,这样的单体应用体量会越来越大,直观上讲,你打的war包会越来越大,整个项目就会显得很臃肿,项目启动时间变长、业务逻辑变得复杂,增加研发的成本,运营维护的成本会逐渐增高。

2、如果因为某个模块的代码出现,内存溢出,导致整个系统不可使用,对于互联网项目来说,互联网应用宕机一个小时的风险,是一般企业都不能承担和允许发生的。

1.3、SOA:单体应用的一种优化方式

1、SOA:它是一种面向服务的一种架构,我们现在不妨假设当前存在一个单体应用,这个单体应用下面有多个模块,例如:销售模块、报表模块、库存管理模块和会员管理模块等。如下所示,SOA的话,它会按照面向服务的原则,对单体应用进行切分;将原来四个模块作为一个整体打成一个war包的单体应用,切分成四个部分。这四个部分,也可以称为四个模块,它们是单独开发和部署的,如下图所示:


2、SOA的好处

按照上图所示,采用SOA的架构来优化单体应用,这样的好处是,即使其中的某一个模块因为内存溢出之类的问题,导致整个机器宕机,之影响当前模块,而不太影响其他模块,其他模块基本上,还可以正常对外提供服务。

3、SOA的缺点

1、SOA也会存在一定的问题,比如,各个模块之间,如果具有依赖关系的情况下,如果上面四个模块彼此相互调用,那么模块之间的关系就会变得比较复杂了,彼此之间的关系也会因此变得混乱。如何处理这个混乱情况呢,我们这里引入了ESB,即企业服务总线,如下图所示:


2、由上图所示,各个模块之间如果发生依赖关系,它就会直接调用ESB里边的soap风格的webservice,这样一来,整个应用下的各个模块之间的关系就变得协调了。

1.4、SOA和微服务架构的却别和联系

未完待续……

1.5、什么是Spring Cloud

1、Spring Cloud它不是一个具体的框架,它是一个工具箱,它提供了各类工具,可以帮助我们快速地构建分布式系统。

2、基于Spring Boot的基础上,封装了Netflix


3、它将Netflix与spring容器进行了整合

二、Spring Boot的搭建

2.1、如下图所示


2.2、添加pom依赖和项目启动类即可

2.3、Spring Boot默认会在四个地方读取配置文件application.properties

1、在项目的根目录下的config目录下找;

2、在项目的根目录下找;

3、在classpth下的config目录下找:即在src/main/resources下的config下找

4、会在classpath下的根目录里找



作者:爱我的程序人生
链接:https://www.jianshu.com/p/cf8be8da66eb


0人推荐
随时随地看视频
慕课网APP