我爱编程

Spring Cloud 微服务入门(一)

2018-01-17  本文已影响0人  vision_zhang

小叙

2017 已经过去了 ,2018来了 。。90后都18了 再不学习就废了。。

1.学习大纲

1、统一开发环境
2、了解微服务架构
3、了解Spring Cloud

2.统一开发环境

3.微服务架构

目前微服务是非常火的架构或者说概念,也是在构建大型互联网项目时采用的架构方式。

3.1 单体架构

单体架构,是指将开发好的项目打成war包,然后发布到tomcat等容器中的应用。

假设你正准备开发一款与Uber和Hailo竞争的出租车调度软件,经过初步会议和需求分析,你可能会手动或者使用基于Spring Boot、Play或者Maven的生成器开始这个新项目,它的六边形架构是模块化的 ,架构图如下:


image.png

3.2.单体架构存在的问题

image.png image.png
如何解决以上问题呢?  --  使用微服务架构

3.3 什么是微服务?

image.png image.png image.png

3.4 微服务架构的特征

image.png

3.5 微服务架构示例

image.png
每一个应用功能区都使用微服务完成。

4 Spring Cloud简介

4.1 简介

Spring Cloud项目的官方网址:
<u>http://projects.spring.io/spring-cloud/</u>

image.png image.png

4.2 Spring Cloud子项目

Component Camden.SR7 Dalston.SR3 Edgware.M1 Finchley.M2 Finchley.BUILD-SNAPSHOT 备注
spring-cloud-aws 1.1.4.RELEASE 1.2.1.RELEASE 1.2.1.RELEASE 2.0.0.M1 2.0.0.BUILD-SNAPSHOT 用于简化整合Amazon Web Service的组件
spring-cloud-bus 1.2.2.RELEASE 1.3.1.RELEASE 1.3.1.RELEASE 2.0.0.M1 2.0.0.BUILD-SNAPSHOT 事件、消息总线,用于传播集群中的状态变化或事件。
spring-cloud-cli 1.2.4.RELEASE 1.3.4.RELEASE 1.4.0.M1 2.0.0.M1 2.0.0.BUILD-SNAPSHOT 用于在Groovy平台创建Spring Cloud应用。
spring-cloud-commons 1.1.9.RELEASE 1.2.3.RELEASE 1.3.0.M1 2.0.0.M2 2.0.0.BUILD-SNAPSHOT 服务发现、负载均衡、熔断机制这种模式为Spring Cloud客户端提供了一个通用的抽象层。
spring-cloud-contract 1.0.5.RELEASE 1.1.3.RELEASE 1.2.0.M1 2.0.0.M2 2.0.0.BUILD-SNAPSHOT
spring-cloud-config 1.2.3.RELEASE 1.3.2.RELEASE 1.4.0.M1 2.0.0.M2 2.0.0.BUILD-SNAPSHOT 配置管理工具,支持使用git、svn等存储配置文件。并在支持客户端配置信息的刷新,加密解密配置内容等。
spring-cloud-netflix 1.2.7.RELEASE 1.3.4.RELEASE 1.4.0.M1 2.0.0.M2 2.0.0.BUILD-SNAPSHOT 核心组件,对多个Netflix OSS开源套件进行整合。
spring-cloud-security 1.1.4.RELEASE 1.2.1.RELEASE 1.2.1.RELEASE 2.0.0.M1 2.0.0.BUILD-SNAPSHOT 安全工具包。
spring-cloud-cloudfoundry 1.0.1.RELEASE 1.1.0.RELEASE 1.1.0.RELEASE 2.0.0.M1 2.0.0.BUILD-SNAPSHOT 整合Pivotal Cloudfoundry(Vmware推出的业界第一个开源PaaS云平台)支持。
spring-cloud-consul 1.1.4.RELEASE 1.2.1.RELEASE 1.2.1.RELEASE 2.0.0.M1 2.0.0.BUILD-SNAPSHOT 服务发现与配置管理工具
spring-cloud-sleuth 1.1.3.RELEASE 1.2.4.RELEASE 1.3.0.M1 2.0.0.M2 2.0.0.BUILD-SNAPSHOT Spring Cloud应用的分布式跟踪实现。
spring-cloud-stream Brooklyn.SR3 Chelsea.SR2 Ditmars.M2 Elmhurst.M1 Elmhurst.BUILD-SNAPSHOT 通过Redis、RabbitMQ、Kafka实现的消息微服务。
spring-cloud-zookeeper 1.0.4.RELEASE 1.1.2.RELEASE 1.2.0.M1 2.0.0.M1 2.0.0.BUILD-SNAPSHOT 基于ZooKeeper的服务发现与配置管理组件。
spring-boot 1.4.5.RELEASE 1.5.4.RELEASE 1.5.6.RELEASE 2.0.0.M3 2.0.0.M3
spring-cloud-task 1.0.3.RELEASE 1.1.2.RELEASE 1.2.0.RELEASE 2.0.0.M1 2.0.0.RELEASE 用于快速构建数据处理的应用。
spring-cloud-vault 1.0.2.RELEASE 1.1.0.M1 2.0.0.M2 2.0.0.BUILD-SNAPSHOT
spring-cloud-gateway 1.0.0.M1 2.0.0.M2 2.0.0.BUILD-SNAPSHOT Spring Cloud网关相关的整合实现。

4.3.版本说明

image.png

官方版本:


image.png image.png

可见,目前Dalston SR3版本是最新的稳定版,所以我们学习的过程中,就是使用的这个版本。

image.png

4.4 Spring Cloud框架特点

image.png

小结

以上是对spring cloud 微服务架构 的一个简单描述 下一篇文章开始代码实战

上一篇下一篇

猜你喜欢

热点阅读