有问题吗?

如果你有任何问题,你可以问下面或输入你正在寻找的!

跟我学Spring Cloud(Finchley版)-08-Ribbo

上一节讲了Ribbon的入门姿势,本节深入探讨Ribbon的高级特性。 内置负载均衡规则 负载均衡规则是Ribbon的核心,下面来看一下Ribbon内置的负载均衡规则。 AvailabilityFilteringRule:过滤掉一直连接失败的被标记为circuit tripped的后端Server,并过滤掉那些高并发的后端Server或者使用一个AvailabilityPredicat . . .阅读

跟我学Spring Cloud(Finchley版)-07-Ribbo

经过前文讲述,我们已经实现了服务发现。本节来解决如下问题: 负载均衡如何考虑?难道得在电影微服务和用户微服务之间加个NGINX做负载均衡吗?听起来是可行的,但如果有10000+服务(这并不夸张,我司的微服务数目是这个数字乘以N,N >= m,哈哈哈)那这个NGINX的配置得有多复杂…… 一般来说,提到负载均衡,大家一般很容易想到浏览器 -> NGINX -> 反向代 . . .阅读

跟我学Spring Cloud(Finchley版)-10-Feign

上一节( 跟我学Spring Cloud(Finchley版)-09-Feign )讲了Feign的入门姿势并深入对比了RestTemplate,本节来深入探讨Feign的高级特性。总的来说,Feign是一个相对简单的组件,但细节还是比较多的,一不小心就可能入坑,注意点我会以WARINING的形式标记出来,便于读者查阅。 Feign配置自定义【细粒度配置】 方式一、代码配置方式 Spring . . .阅读

聊一聊 Cloud Native 与12-Factor

12-Factor(twelve-factor),也称为“十二要素”,是一套流行的应用程序开发原则。Cloud Native架构中使用12-Factor作为设计准则。 12-Factor 的目标在于: 使用标准化流程自动配置,从而使新的开发者花费最少的学习成本加入项目中。 和底层操作系统之间尽可能的划清界限,在各个系统中提供最大的可移植性。 适合 . . .阅读

跟我学Spring Cloud(Finchley版)-12-微服务容错

至此,我们已实现服务发现、负载均衡,同时,使用Feign也实现了良好的远程调用——我们的代码是可读、可维护的。理论上,我们现在已经能构建一个不错的分布式应用了,但微服务之间是通过网络通信的,网络可能出问题;微服务本身也不可能100%可用。 如何提升应用的可用性呢?这是我们必须考虑的问题—— 举个例子:某大型系统中,服务A调用服务B,某个时刻,微服务B突然崩溃了。微服务A中,依然有大量请求在请求 . . .阅读

跟我学Spring Cloud(Finchley版)-14-Feign

Feign默认已经整合了Hystrix,本节详细探讨Feign使用Hystrix的具体细节。 服务降级 加配置,默认Feign是不启用Hystrix的,需要添加如下配置启用Hystrix,这样所有的Feign Client都会受到Hystrix保护!feign:   hystrix:     enabled: true . . .阅读

跟我学Spring Cloud(Finchley版)-13-通用方式使

本节详细讲解使用Hystrix的通用方式。 简介 Hystrix是由Netflix开源的一个延迟和容错库,用于隔离访问远程系统、服务或者第三方库,防止级联失败,从而提升系统的可用性与容错性。Hystrix主要通过以下几点实现延迟和容错。 包裹请求 使用HystrixCommand(或HystrixObservableCommand)包裹对依赖的调用逻辑,每个命令在独立线程中执行。 . . .阅读

跟我学Spring Cloud(Finchley版)-16-Zuul

至此,已实现基于Eureka的服务发现,基于Ribbon的负载均衡,Feign也为我们提供了很不错的远程调用能力,使用Hystrix后,高并发场景下应用也不会被别人拖死——咱们的微服务架构已经日趋完善! 然而,迄今为止,只讨论了微服务之间的调用,尚没讨论如何应对外部请求。应对外部请求时,就会发现,我们的架构依然存在一些问题—— 为什么要使用网关 不同的微服务一般会有不同的网络地址,而外部客户 . . .阅读

跟我学Spring Cloud(Finchley版)-15-Hystr

Hystrix提供了监控Hystrix Command的能力,本节来详细探讨。 监控端点与数据 应用整合Hystrix,同时应用包含spring-boot-starter-actuator 依赖,就会存在一个/actuator/hystrix.stream 端点,用来监控Hystrix Command。当被@HystrixCommand 注解了的方法被调用时,就会产生监控信息,并暴露到该端点中 . . .阅读