SpringCloud学习笔记
文章平均质量分 88
gdjlc
这个作者很懒,什么都没留下…
展开
-
Spring Cloud Config实现集群配置中心
Spring Cloud Config为分布式系统提供了配置服务器和配置客户端,可以管理集群中的配置文件。使用Git、SVN等版本管理系统存放配置文件,配置服务器会到版本管理系统获取配置,集群中的配置客户端再到配置服务器中获取配置。开发工具:IntelliJ IDEA 2019.2.2一、创建配置服务器1、SVN服务器添加项目和配置文件config-client-dev.yml内容:server: port: 8092test: user: name: aa.原创 2021-03-20 11:43:14 · 394 阅读 · 0 评论 -
SpringCloud之Spring Cloud Stream:消息驱动
Spring Cloud Stream 是一个构建消息驱动微服务的框架,该框架在Spring Boot的基础上整合了Spring Integrationg来连接消息代理中间件(RabbitMQ, Kafka等),提供了个性化的自动化配置实现,并引入了发布-订阅、消费组、分区这三个核心概念。应用程序通过input通道或者output通道来与Spring Cloud Stream中binder(绑定器)交互,通过配置来binding. 而Spring Cloud Stream的binder负责与中间件交互。原创 2021-03-19 16:01:52 · 381 阅读 · 0 评论 -
SpringCloud之Zuul:服务网关
Zuul在Web项目中的使用见上文《SpringBoot中使用Zuul》,下面例子为Zuul在Spring Cloud的使用。开发工具:IntelliJ IDEA 2019.2.3一、服务器端1、创建项目IDEA中创建一个新的SpringBoot项目,名称为“zuul-eureka-server”,SpringBoot版本选择2.1.10,在选择Dependencies(依赖)的界面勾选Spring Cloud Discovery -> Eureka Server。pom.xml完整原创 2021-03-19 15:52:27 · 187 阅读 · 0 评论 -
SpringBoot中使用Zuul
Zuul提供了服务网关的功能,可以实现负载均衡、反向代理、动态路由、请求转发等功能。Zuul大部分功能是通过过滤器实现的,除了标准的四种过滤器类型,还支持自定义过滤器。使用@EnableZuulProxy注解,Spring容器初始化时,会将Zuul的相关配置初始化,其中包含一个Spring Boot的Bean:ServletRegistrationBean,该类主要用于注册Servlet。在Servlet的service方法中,执行各种Zuul过滤器。下图为HTTP请求在ZuulServlet中的生命原创 2021-03-19 15:46:52 · 2422 阅读 · 2 评论 -
SpringCloud之Hystrix:集群容错框架
分布式环境中,可能会有一些被依赖的服务会失效,影响系统的稳定运行。Hystrix通过添加延迟阈值以及容错的逻辑,以控制分布式系统间组件的交互。Hystrix通过隔离服务间的访问点、停止它们之间的级联故障、提供可回退操作来实现容错。下面例子为在Spring Cloud的使用。开发工具:IntelliJ IDEA 2019.2.3一、服务器端1、创建项目IDEA中创建一个新的SpringBoot项目,名称为“spring-hystrix-server”,SpringBoot版本选择2.1.原创 2021-03-19 15:38:22 · 174 阅读 · 0 评论 -
SpringCloud之Feign:REST客户端
在Spring Cloud集群中,各个角色的通信基于REST服务,在调用服务时,需要使用REST客户端,常用,除了使用Spring自带的RestTemplate,也可使用另一个REST客户端:Feign。使用Feign时,可以使用自带注解或第三方注解来修饰接口,使得接口具有访问Web Service的能力。Feign还支持插件式的编码器和解码器,对请求和响应进行不同的封装和解析。Spring Cloud将Feign集成到Netflix项目中,与Eureka、Ribbon集成时,Feign就具有负载均原创 2021-03-19 15:31:01 · 132 阅读 · 0 评论 -
SpringCloud之Ribbon:负载均衡
Spring Cloud集成了Ribbon,结合Eureka,可实现客户端的负载均衡。下面实现一个例子,结构下图所示。一、服务器端1、创建项目开发工具:IntelliJ IDEA 2019.2.3IDEA中创建一个新的SpringBoot项目,名称为“cloud-server”,SpringBoot版本选择2.1.10,在选择Dependencies(依赖)的界面勾选Spring Cloud Discovery ->Eureka Server,创建完成后的pom.xml配置文件原创 2021-03-19 15:26:40 · 154 阅读 · 0 评论 -
SpringCloud之Eureka:集群搭建
上篇文章《SpringCloud之Eureka:服务发布与调用例子》实现了一个简单例子,这次对其进行改造,运行两个服务器实例、两个服务提供者实例,服务调用者请求服务,使其可以进行集群部署。集群结构如下图所示。由于开发环境只有一台电脑,要构建集群,需要修改hosts文件,在里面添加主机名映射。127.0.0.1 slave1 slave2一、服务器端1、创建项目开发工...原创 2019-11-03 19:51:36 · 251 阅读 · 1 评论 -
SpringCloud之Eureka:服务发布与调用例子
Eureka是Netflix开发的服务发现框架,本身是一个基于REST的服务,主要用于定位运行在AWS域中的中间层服务,以达到负载均衡和中间层服务故障转移的目的。SpringCloud将它集成在其子项目spring-cloud-netflix中,以实现SpringCloud的服务发现功能。Eureka概述Eureka包含两个组件:Eureka Server(服务器,或服务注册中心)和E...原创 2019-11-03 11:07:28 · 648 阅读 · 0 评论 -
微服务与Spring Cloud基本概念、Spring Cloud版本命名方式与版本选择
微服务是什么?Spring Cloud是什么?Spring Cloud版本命名方式?Spring Cloud版本选择?一、微服务是什么微服务是一种架构风格,是一种将单体应用开发为一组小型服务的方法,每个服务运行在自己的进程中,服务间通信采用轻量级通信机制(通常用HTTP资源API)。这些服务围绕业务能力构建并且可通过全自动部署机制独立部署。这些服务共用一个最小型的集中式的管理,服务可...原创 2019-10-29 23:11:24 · 749 阅读 · 0 评论