随笔分类 -  《史上最简单的Spring Cloud教程》笔记

摘要:在之前的文章介绍了Spring Cloud Gateway的Predict(断言)、Filter(过滤器),大家对Spring Cloud Gateway有初步的认识,其中在对服务路由转发的这一块,在之前的文章是采用硬编码的方式进行路由转发。这篇文章以案例的形式来讲解Spring Cloud Gat 阅读全文
posted @ 2020-07-10 10:16 开心ever 阅读(2104) 评论(0) 推荐(0)
摘要:在高并发的系统中,往往需要在系统中做限流,一方面是为了防止大量的请求使服务器过载,导致服务不可用,另一方面是为了防止网络攻击。 常见的限流方式,比如Hystrix适用线程池隔离,超过线程池的负载,走熔断的逻辑。在一般应用服务器中,比如tomcat容器也是通过限制它的线程数来控制并发的;也有通过时间窗 阅读全文
posted @ 2020-07-10 10:07 开心ever 阅读(1072) 评论(0) 推荐(0)
摘要:在上一篇文章详细的介绍了Gateway的Predict,Predict决定了请求由哪一个路由处理,在路由处理之前,需要经过“pre”类型的过滤器处理,处理返回响应之后,可以由“post”类型的过滤器处理。 filter的作用和生命周期 由filter工作流程点,可以知道filter有着非常重要的作用 阅读全文
posted @ 2020-07-10 08:41 开心ever 阅读(2905) 评论(1) 推荐(0)
摘要:Spring Cloud gateway工作流程 在之前的文章的Spring Cloud Gateway初体验中,大家已经对Spring Cloud Gateway的功能有一个初步的认识,网关作为一个系统的流量的入口,有着举足轻重的作用,通常的作用如下: 协议转换,路由转发 流量聚合,对流量进行监控 阅读全文
posted @ 2020-07-09 17:29 开心ever 阅读(504) 评论(0) 推荐(0)
摘要:这篇文章讲述了如何简单地使用Spring Cloud Gateway,来源于Spring Cloud官方案例,地址https://spring.io/guides/gs/gateway 。 简介 Spring Cloud Gateway是Spring Cloud官方推出的第二代网关框架,取代Zuul 阅读全文
posted @ 2020-07-07 17:00 开心ever 阅读(315) 评论(0) 推荐(0)
摘要:上一篇文章讲述了如何利用Hystrix Dashboard去监控断路器的Hystrix command。当我们有很多个服务的时候,这就需要聚合所有服务的Hystrix Dashboard的数据了。这就需要用到Spring Cloud的另一个组件了,即Hystrix Turbine。 一、Hystri 阅读全文
posted @ 2020-07-07 16:11 开心ever 阅读(294) 评论(0) 推荐(0)
摘要:一、Hystrix Dashboard简介 在微服务架构中为例保证程序的可用性,防止程序出错导致网络阻塞,出现了断路器模型。断路器的状况反应了一个程序的可用性和健壮性,它是一个重要指标。Hystrix Dashboard是作为断路器状态的一个组件,提供了数据监控和友好的图形化界面。 二、准备工作 本 阅读全文
posted @ 2020-07-07 15:39 开心ever 阅读(286) 评论(0) 推荐(0)
摘要:一、准备工作 Eureka通过运行多个实例,使其更具有高可用性。事实上,这是它默认的熟性,你需要做的就是给对等的实例一个合法的关联serviceurl。 这篇文章我们基于SpringCloud教程第1篇:Eureka(F版本)文章的工程 二、改造工作 在eureka-server工程中resourc 阅读全文
posted @ 2020-07-06 15:14 开心ever 阅读(160) 评论(0) 推荐(0)
摘要:这篇文章主要讲述服务追踪组件zipkin,Spring Cloud Sleuth集成了zipkin组件。 一、简介 Spring Cloud Sleuth 主要功能就是在分布式系统中提供追踪解决方案,并且兼容支持了 zipkin,你只需要在pom文件中引入相应的依赖即可。 二、服务追踪分析 随着服务 阅读全文
posted @ 2020-06-24 16:42 开心ever 阅读(236) 评论(0) 推荐(0)
摘要:Spring Cloud Bus 将分布式的节点用轻量的消息代理连接起来。 它可以用于 广播配置文件的更改 者服务之间的通讯 用于监控。 本文要讲述的是用Spring Cloud Bus实现通知微服务架构的配置文件的更改。 一、准备工作 本文还是基于上一篇文章来实现。按照官方文档,我们只需要在配置文 阅读全文
posted @ 2020-06-24 14:38 开心ever 阅读(232) 评论(0) 推荐(0)
摘要:上一篇文章讲述了一个服务如何从配置中心读取文件,配置中心如何从远程git读取配置文件,当服务实例很多时,都从配置中心读取文件,这时可以考虑将配置中心做成一个微服务,将其集群化,从而达到高可用,架构图如下: 一、准备工作 继续使用上一篇文章的工程,创建一个eureka-server工程,用作服务注册中 阅读全文
posted @ 2020-06-24 09:26 开心ever 阅读(210) 评论(0) 推荐(0)
摘要:一、简介 在分布式系统中,由于服务数量巨多,为了方便服务配置文件统一管理,实时更新,所以需要分布式配置中心组件。在Spring Cloud中,有分布式配置中心组件spring cloud config ,它支持配置服务放在配置服务的内存中(即本地),也支持放在远程Git仓库中。在spring clo 阅读全文
posted @ 2020-06-23 17:37 开心ever 阅读(294) 评论(0) 推荐(0)
摘要:在微服务架构中,需要几个基础的服务治理组件,包括服务注册与发现、服务消费、负载均衡、断路器、智能路由、配置管理等,由这几个基础组件相互协作,共同组建了一个简单的微服务系统。一个简答的微服务系统如下图: 在Spring Cloud微服务系统中,一种常见的负载均衡方式是,客户端的请求首先经过负载均衡(z 阅读全文
posted @ 2020-06-23 16:41 开心ever 阅读(255) 评论(0) 推荐(0)
摘要:在微服务架构中,根据业务来拆分成一个个的服务,服务与服务之间可以相互调用(RPC),在Spring Cloud可以用RestTemplate+Ribbon和Feign来调用。为了保证其高可用,单个服务通常会集群部署。由于网络原因或者自身的原因,服务并不能保证100%可用,如果单个服务出现问题,调用这 阅读全文
posted @ 2020-06-23 15:30 开心ever 阅读(297) 评论(0) 推荐(0)
摘要:一、Feign简介 Feign是一个声明式的伪Http客户端 使用Feign,只需要创建一个接口并注解 有可插拔的注解特性,使用Feign 注解和JAX-RS注解 Feign支持可插拔的编码器和解码器 Feign默认集成了Ribbon,并和Eureka结合,默认实现了负载均衡的效果 整合了Hystr 阅读全文
posted @ 2020-06-23 14:54 开心ever 阅读(537) 评论(0) 推荐(0)
摘要:一、ribbon简介 Spring cloud有两种服务调用方式,一种是ribbon+restTemplate,另一种是feign。在这一篇文章首先讲解下基于ribbon+rest。 ribbon是一个负载均衡客户端,可以很好的控制http和tcp的一些行为。Feign默认集成了ribbon。 ri 阅读全文
posted @ 2020-06-23 14:08 开心ever 阅读(564) 评论(0) 推荐(0)
摘要:一、创建服务注册中心(Eureka组件) 1.1 首先创建一个maven主工程。 1.创建maven项目 是一个主Maven工程,spring Boot版本为2.0.3.RELEASE,Spring Cloud版本为Finchley.RELEASE。 2.加入pom依赖,这个pom文件作为父pom文 阅读全文
posted @ 2020-06-22 17:58 开心ever 阅读(710) 评论(0) 推荐(0)