# springclouddemo **Repository Path**: finefrezy/springclouddemo ## Basic Information - **Project Name**: springclouddemo - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 2 - **Forks**: 0 - **Created**: 2020-12-11 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README Spring Cloud ----基于SpringBoot应用 ----单体系统---拆分-----多个子系统(服务) 微服务 ----- 分布式事务 -------- ----- Session不能再各个服务之间共享的------ 服务治理:注册中心 Eureka Server----服务管理 服务提供者 Eureka Client 服务消费者 Eureka Client----服务调用 分布式集群 互相之间的通信----REST通信 Ribbon ---- 负载均衡--- 默认轮询策略 Hystrix ---熔断/断路器 ---服务降级(fallbackMethod)-- 防止故障蔓延 Feign------Ribbon + Hystrix-----写法上更加简洁 -------服务消费者的行为 Spring Cloud Zuul SpringBoot应用------服务 网关路由 ----服务A 请求---》网关---》根据请求----分配 ----服务B ----服务C SpringMVC-请求--DispatherServlet-----根据地址请求分发 路由映射主要通过pre类型的过滤器完成,它将请求路径与配置的路由规则进行匹配, 以找到需要转发的目标地址;而请求转发的部分则是由route类型的过滤器来完成, 对pre类型过滤器获得的路由地址进行转发。所以说,过滤器可以说是zuul实现api 网关功能最核心的部件,每一个进入zuul的http请求都会经过一系列的过滤器处理链 得到请求响应并返回给客户端 pre: 这种过滤器在请求被路由之前调用。可利用这种过滤器实现身份验证、 在集群中选择请求的微服务,记录调试信息等。---校验信息 routing: 这种过滤器将请求路由到微服务。这种过滤器用于构建发送给微服务的请求, 并使用apache httpclient或netflix ribbon请求微服务。 post: 这种过滤器在路由到微服务以后执行。这种过滤器可用来为响应添加 请求转发后获取请求信息和响应入库,或者日志记录 标准的http header、收集统计信息和指标、将响应从微服务发送给客户端等。 error: 在其他阶段发送错误时执行该过滤器。 shouldFilter全部return-》false zuul正常调用的时候 shouldFilter->ZuulFilterPre shouldFilter->ZuulFilterRoute shouldFilter->ZuulFilterPost zuul调用出错的时候 shouldFilter->ZuulFilterPre shouldFilter->ZuulFilterRoute shouldFilter->ZuulFilterError shouldFilter->ZuulFilterPost shouldFilter全部return-》true shouldFilter->ZuulFilterPre run->ZuulFilterPre shouldFilter->ZuulFilterRoute run->ZuulFilterRoute shouldFilter->ZuulFilterPost run->ZuulFilterPost https://www.jianshu.com/p/ff863d532767