SpringCloud Config 分布式配置

配置文件与代码解耦 简介 在分布式系统中,由于服务数量巨多,为了方便服务配置文件统一管理,实时更新,所以需要分布式配置中心组件。市面上开源的配置中心有很多,BAT每家都出过,360的QConf、淘宝的diamond、百度的disconf都是解决这类问题。国外也有很多开源的配置中心Apache的Apache Commons Configuration、owner、cfg4j等等。在Spring...

Zuul路由网关

zuul是什么 zuul 是netflix开源的一个API Gateway 服务器, 本质上是一个web servlet应用。 Zuul 在云平台上提供动态路由,监控,弹性,安全等边缘服务的框架。Zuul 相当于是设备和 Netflix 流应用的 Web 网站后端所有请求的前门。 zuul的例子可以参考 netflix 在github上的 simple webapp,可以按照netflix...

hystrix

hystrix[hɪst’rɪks] 分布式系统面临的问题 复杂分布式系统结构中的应用程序有数十个依赖关系, 每个依赖关系在某些时候将不可避免的失败 服务雪崩 多个服务之间调用的时候, 微服务A调用微服务B和微服务C, 微服务B和微服务C有调用其它的微服务, 这就是所谓的“扇出”, 如果扇出的链路上某个微服务的调用响应时间过长或者不可用, 对微服务A的调用就会占用越来越多的系统资源, 进而引...

Feign

Feign[feɪn] 什么是Feign? Feign 的英文表意为“假装,伪装,变形”, 是一个http请求调用的轻量级框架,可以以Java接口注解的方式调用Http请求,而不用像Java中通过封装HTTP请求报文的方式直接调用。Feign通过处理注解,将请求模板化,当实际调用的时候,传入参数,根据参数再应用到请求上,进而转化成真正的请求,这种请求相对而言比较直观。 Feign被广泛应用在...

Ribbon

Ribbon [ˈrɪbən] Ribbon是什么 Spring Cloud Ribbon是一个基于HTTP和TCP的 客户端 负载均衡 工具 简单的说,Ribbon是Netflix发布的开源项目,主要功能是提供客户端的软件负载均衡算法,将Netflix的中间层服务连接在一起。Ribbon客户端组件提供一系列完善的配置项如连接超时,重试等。简单的说,就是在配置文件中列出Load Bala...

Eureka

Eureka[juˈriːkə] 简介 Eureka是Netflix服务发现的服务端与客户端,Eureka提供服务注册以及服务发现的能力,当是Eureka Server时(注册中心),所有的客户端会向其注册,当是Eureka Client时,可以从注册中心获取对应的服务信息,或者是向Eureka Server将自己作为实例注册进去,每个Eureka不仅仅是一个服务端同时还是一个客户端。 注册...

初识springcloud

Spring Cloud 是一套完整的微服务解决方案,基于 Spring Boot 框架,准确的说,它不是一个框架,而是一个大的容器,它将市面上较好的微服务框架集成进来,从而简化了开发者的代码量。 Spring Cloud 是什么? Spring Cloud 是一系列框架的有序集合,它利用 Spring Boot 的开发便利性简化了分布式系统的开发,比如服务发现、服务网关、服务路由、链路追踪...

微服务总结

微服务架构的4个核心问题 服务很多, 客户端该怎么访问? 这么多服务, 服务之间如何通信? 这么多服务, 如何治理? 服务挂了怎么办? 解决方案 SpringCloud生态 SpringBoot SpringCloud NetFlix 一站式解决方案 api网关 zuul组件 Feign —HttpClinet —Http通信方式同步阻塞 服务注册与发现: Eureka 熔断机制...