随笔分类 - springCloud(C语言中文网)
http://c.biancheng.net/skill/springcloud/
摘要:为了让大家更快地上手了解 Apollo 配置中心,官方准备了一个快速启动的安装包,能够在几分钟内完成本地环境部署,启动 Apollo 配置中心。本地部署只适用于开发环境,生产环境需要采用分布式部署,教程后面会为大家讲解怎么进行分布式部署。 1. 环境准备 Apollo 采用 Java 语言开发,部署
阅读全文
摘要:Apollo(阿波罗)是携程框架部门研发的分布式配置中心,能够集中化管理应用不同环境、不同集群的配置,配置修改后能够实时推送到应用端,并且具备规范的权限、流程治理等特性,适用于微服务配置管理场景。服务端基于 Spring Boot 和 Spring Cloud 开发,打包后可以直接运行,不需要额外安
阅读全文
摘要:Smconf 专注于分布式环境下的配置的统一管理。采用 Java+Zookeeper+Mongodb+Spring Boot 开发。目前只支持 Java,其他的使用语言需要通过调用 REST API 来实现。每个技术人都有一个开源的梦想,那就是自己也能开发出一个让很多人使用的框架。其实分享使用不是重
阅读全文
摘要:Spring Cloud Gateway 作为新一代网关,在性能上有很大提升,并且附加了诸如限流等实用的功能。本节主要讲解 Gateway 的一些实用功能的实例。 限流实战 开发高并发系统时有三把利器用来保护系统:缓存、降级和限流。API 网关作为所有请求的入口,请求量大,我们可以通过对并发访问的请
阅读全文
摘要:全局过滤器作用于所有的路由,不需要单独配置,我们可以用它来实现很多统一化处理的业务需求,比如权限认证、IP 访问限制等。 接口定义类 org.springframework.cloud.gateway.filter.GlobalFilter public interface GlobalFilter
阅读全文
摘要:GatewayFilter Factory 是 Spring Cloud Gateway 中提供的过滤器工厂。Spring Cloud Gateway 的路由过滤器允许以某种方式修改传入的 HTTP 请求或输出的 HTTP 响应,只作用于特定的路由。Spring Cloud Gateway 中内置了
阅读全文
摘要:Spring Cloud Gateway 内置了许多路由断言工厂,可以通过配置的方式直接使用,也可以组合使用多个路由断言工厂。接下来为大家介绍几个常用的路由断言工厂类。 1)Path 路由断言工厂 Path 路由断言工厂接收一个参数,根据 Path 定义好的规则来判断访问的 URI 是否匹配。 sp
阅读全文
摘要:本节我们先创建一个 Gateway 项目,然后实现了一个最简单的转发功能,并进行 Eureka 路由的整合。 1、创建 Gateway 项目 创建一个 Spring Boot 的 Maven 项目,增加 Spring Cloud Gateway 的依赖 <parent> <groupId>org.s
阅读全文
摘要:Spring Cloud Gateway 是 Spring 官方基于 Spring 5.0、Spring Boot 2.0 和 Project Reactor 等技术开发的网关,Spring Cloud Gateway 旨在为微服务架构提供一种简单有效的、统一的 API 路由管理方式。Spring
阅读全文
摘要:zuul 中自带了一个 DebugFilter,一开始笔者也没明白这个 DebugFilter 有什么用,看名称很容易理解,它是用来调试的,可是你看它的源码几乎没什么逻辑,就 set 了两个值而已 @Override public Object run() { RequestContext ctx
阅读全文
摘要:系统在生产环境出现问题时,排查问题最好的方式就是查看日志了,日志的记录尽量详细,这样你才能快速定位问题。下面带大家学习如何在 Zuul 中输出请求响应的信息来辅助我们解决一些问题。熟悉 Zuul 的朋友都知道,Zuul 中有 4 种类型过滤器,每种都有特定的使用场景,要想记录响应数据,那么必须是在请
阅读全文
摘要:/routes 端点 当 @EnableZuulProxy 与 Spring Boot Actuator 配合使用时,Zuul 会暴露一个路由管理端点 /routes。借助这个端点,可以方便、直观地查看以及管理 Zuul 的路由。将所有端点都暴露出来,在 application.properties
阅读全文
摘要:Zuul 主要功能就是转发,在转发过程中我们无法保证被转发的服务是可用的,这个时候就需要容错机制及回退机制。 1、容错机制 容错,简单来说就是当某个服务不可用时,能够切换到其他可用的服务上去,也就是需要有重试机制。在 Zuul 中开启重试机制需要依赖 spring-retry。首先在 pom.xml
阅读全文
摘要:在教程《Zuul网关的介绍及使用》中一开始就介绍过,Zuul 可以实现很多高级的功能,比如限流、认证等。想要实现这些功能,必须要基于 Zuul 给我们提供的核心组件“过滤器”。 过滤器类型 Zuul 中的过滤器跟我们之前使用的 javax.servlet.Filter 不一样,javax.servl
阅读全文
摘要:在教程《Zuul网关介绍和使用》中,我们学习了如何结合 Eureka 来实现动态的路由转发。当 Zuul 集成 Eureka 之后,其实就可以为 Eureka 中所有的服务进行路由操作了,默认的转发规则就是“API 网关地址+访问的服务名称+接口 URI”。在给服务指定名称的时候,应尽量短一点,这样
阅读全文
摘要:Zuul 是 Netflix OSS 中的一员,是一个基于 JVM 路由和服务端的负载均衡器。提供路由、监控、弹性、安全等方面的服务框架。Zuul 能够与 Eureka、Ribbon、Hystrix 等组件配合使用。Zuul 的核心是过滤器,通过这些过滤器我们可以扩展出很多功能,比如: 1)动态路由
阅读全文
摘要:前面我们实现了对单个服务实例的监控,当然在实际应用中,单个实例的监控数据没有多大的价值,我们更需要的是一个集群系统的监控信息,这时我们就需要 Turbine。Turbine 是用来监控集群的,通过它来汇集监控信息,并将聚合后的信息提供给 Hystrix Dashboard 来集中展示和监控。 Tur
阅读全文
摘要:我们已经知道 Hystrix 提供了监控的功能,可以通过 hystrix.stream 端点来获取监控数据,但是这些数据是以字符串的形式展现的,实际使用中不方便查看。我们可以借助 Hystrix Dashboard 对监控进行图形化展示。Hystrix Dashboard 是一款针对 Hystrix
阅读全文
摘要:在微服务架构中,Hystrix 除了实现容错外,还提供了实时监控功能。在服务调用时,Hystrix 会实时累积关于 HystrixCommand 的执行信息,比如每秒的请求数、成功数等。 Hystrix 监控需要两个必备条件:1)必须有 Actuator 的依赖 <dependency> <grou
阅读全文
摘要:创建一个新的 Maven 项目 hystrix-feign-demo,增加 EurekaClient,Feign,Hystrix 的依赖,然后在属性文件中开启 Feign 对 Hystrix 的支持: feign.hystrix.enabled=true 1. Fallback 方式 在 Feign
阅读全文

浙公网安备 33010602011771号