SpringCloud入门篇 谨以此文给小白

SpringCloud入门级指南


首先要明白springcloud是什么,能干什么,然后才是怎么用!!!

springcloud是什么?

            springCloud是基于SpringBoot的一整套实现微服务的框架。他提供了微服务开发所需的配置管理、服务发现、断路器、智能路由、微代理、控制总线、全局锁、决策竞选、分布式会话和集群状态管理等组件。最重要的是, 跟spring boot框架一起使用的话,会让你开发微服务架构的云服务非常好的方便。

            SpringBoot旨在简化创建产品级的 Spring 应用和服务,简化了配置文件,使用嵌入式web服务器,含有诸多开箱即用微服务功能。
             Dubbo很多功能组件都没有提供实现,大多需要自行开发集成,而SpringCloud是相对比较成熟完善的一阵套微服务架构实现。
 

我们来一起看一下Springcloud运行原理

1. 首先我们提供服务的SpringBoot微服务项目,在 Netflix Eureka 注册服务
2. 其它消费服务的SpringBoot微服务项目,可以在 Netflix Eureka 中订阅服务
3. 消费服务的SpringBoot微服务项目,通过 Netflix Eureka 获取服务提供者的真实地址,从而调用服务提供者的服务。
4. 消费服务的SpringBoot微服务项目,通过 RestTemplate ,或者 Feign 调用服务提供者
5. 当服务提供者提供集群服务时,在 RestTemplate ,或者 Feign 调用服务时加入Ribbon负载均衡器 ,即可实现 RestTemplate ,或者 Feign 的负载均衡调用。
6. 不管是服务提供者,还是消费者,所有的SpringBoot微服务项目如果有共同的配置文件属性,则可以使用SpringCloud提供的分布式配置中心 spring-cloud-config-server
7. 数不尽的SpringBoot微服务项目的URL调用和统一权限处理等将是个难题, Netflix Zuul 作为网关路由,将会很好的处理这个问题,它统一管理所有URL的路由,提供动态路由,监控,弹性,安全等的边缘服务。
8. 微服务项目中必将会遇到各种远程调用异常情况,此时我们需要 Netflix Hystrix 来完成服务降级,断路器保护等措施,以提高微服务项目的容错能力。

综上,集群中各功能组件协调工作,则可以让SpringCloud架构下的项目承受更高并发量,具有更强大的容错高可用性。根据以上原理,我将在SpringCloud篇随后几篇文章中依次介绍所有的组件功能的简单使用。在本篇文章中我们主要实现SpirngCloud的基本运行原理。以下我们一起动手实现Eureka注册中心,服务提供者,服务消费者。
 

********************* Eureka 注册中心 步骤: 5步************

1>创建SpringBoot项目
2>在pom.xml文件中
          引入Eureka依赖 spring-cloud-starter-eureka-server
          配置 SpringCloud 的子项目版本集中管理 依赖 spring-cloud-dependencies
          配置 SpringCloud 官方远程仓库 https://repo.spring.io/milestone
3> 在项目配置文件application.yml中配置eureka注册中心配置项
4>在项目入口函数上启用注册中心 @EnableEurekaServer
5>启动项目,访问注册中心   http://localhost:8888/

********************* Eureka 服务器提供者 步骤: 6步************

1>创建SpringBoot项目
2>在pom.xml文件中
引入Eureka客户端依赖 spring-cloud-starter-eureka
配置 SpringCloud 的子项目版本集中管理 依赖 spring-cloud-dependencies
配置 SpringCloud 官方远程仓库 https://repo.spring.io/milestone
3> 在项目配置文件application.yml中配置eureka
4>随便写一个控制器服务
5>在项目入口函数上启用注册中心 客户端@EnableEurekaClient
6>启动项目
访问 http://localhost:8002/getFuture 说明项目启动成功
访问注册中心 http://localhost:8888/ 看到注册中心已经注册service-provider服务

 

******************** Eureka 服务器消费者 RestTemplate 步骤: 7步************

1>创建SpringBoot项目
2>在pom.xml文件中
引入Eureka客户端依赖 spring-cloud-starter-eureka
配置 SpringCloud 的子项目版本集中管理 依赖 spring-cloud-dependencies
配置 SpringCloud 官方远程仓库 https://repo.spring.io/milestone
3> 在项目配置文件application.yml中配置eureka
4>向Spring容器中加入RestTemplate对象
5>在service层自动注入RestTemplate对象调用eureka注册中心的远程服务
6>编写控制器层调用上一步service层
7>在项目入口函数上启用eureka客户端@EnableEurekaClient
启动项目,访问
http://localhost:8001/getProviderFuture
对比服务提供者
http://localhost:8002/getFuture



详细信息 下面会给出源码

个人博客下载中心:(springCloud入门基本代码(基础篇))

猜你喜欢

转载自blog.csdn.net/qq_43182556/article/details/84671555