随笔分类 - spring cloud
摘要:Cancel(服务下线) 在Service Provider服务shut down的时候,需要及时通知Eureka Server把自己剔除,从而避免其它客户端调用已经下线的服务,导致服务不可用。 com.netflix.discovery.DiscoveryClient中shutdown()的867
阅读全文
摘要:主要对Eureka的Renew(服务续约),从服务提供者发起续约请求开始分析,通过阅读源码和画时序图的方式,展示Eureka服务续约的整个生命周期。服务续约主要是把服务续约的信息更新到自身的Eureka Server中,然后再同步到其它Eureka Server中。 Renew(服务续约)操作由Se
阅读全文
摘要:@EnableEurekaClient注解,从源码的角度分析是如何work的 NetFlix Eureka client Eureka client 负责与Eureka Server 配合向外提供注册与发现服务接口。首先看下eureka client是怎么定义, Netflix的 eureka cl
阅读全文
摘要:Eureka是怎么work的 那eureka client如何将本地服务的注册信息发送到远端的注册服务器eureka server上。通过下面的源码分析,看出Eureka Client的定时任务调用Eureka Server的Reset接口,而Eureka接收到调用请求后会处理服务的注册以及Eure
阅读全文
摘要:为什么不应该使用ZooKeeper做服务发现 英文链接:Eureka! Why You Shouldn’t Use ZooKeeper for Service Discovery:http://www.knewton.com/tech/blog/2014/12/eureka-shouldnt-use
阅读全文
摘要:调用了findByIdFallback,并不代表使用了断路器,可以通过 /health 查看是否启用了断路器 1.如何实现自定义路由算法 1.实现 IRule 接口 2.实例化 接口 2.为服务名称users 配置 IRule users.ribbon.NFLoadBalancerRuleClass
阅读全文
摘要:前言 在单体式应用中,我们通常的做法是将配置文件和代码放在一起,这没有什么不妥。当你的应用变得越来越大从而不得不进行服务化拆分的时候,会发现各种provider实例越来越多,修改某一项配置越来越麻烦,你常常不得不为修改某一项配置而重启某个服务所有的provider实例,甚至为了灰度上线需要更新部分p
阅读全文
摘要:Spring Cloud 为开发人员提供了一系列的工具来快速构建分布式系统的通用模型 。例如:配置管理、服务发现、断路由、智能路由、微代理、控制总线、一次性Token、全局锁、决策竞选、分布式session、集群状态等等。分布式系统的协助需要一大堆的模型,使用Spring Cloud开发者能快速的建
阅读全文
摘要:如何实现对配置信息的实时更新 消息代理中间件可以将消息路由到一个或多个目的地。利用这个功能,我们就能完美的解决该问题 RabbitMQ实现 config-client修改pom.xml增加spring-cloud-starter-bus-amqp模块 在配置文件中增加关于RabbitMQ的连接和用户
阅读全文
摘要:传统作法 在之前实现的config-server基础上来实现高可用非常简单,不需要我们为这些服务端做任何额外的配置,只需要遵守一个配置规则:将所有的Config Server都指向同一个Git仓库,这样所有的配置内容就通过统一的共享文件系统来维护,而客户端在指定Config Server位置时,只要
阅读全文
摘要:Eureka Server进行互相注册的方式来实现高可用的部署,所以我们只需要将Eureke Server配置其他可用的serviceUrl就能实现高可用部署 创建application-peer1.properties,作为peer1服务中心的配置,并将serviceUrl指向peer2 spri
阅读全文
摘要:微服务架构 使用Spring Cloud Netflix中的Eureka实现了服务注册中心以及服务注册与发现; 而服务间通过Ribbon或Feign实现服务的消费以及均衡负载; 通过Spring Cloud Config实现了应用多环境的外部化配置以及版本管理。 为了使得服务集群更为健壮,使用Hys
阅读全文
摘要:Spring Cloud Config为服务端和客户端提供了分布式系统的外部化配置支持。配置服务器为各应用的所有环境提供了一个中心化的外部配置。它实现了对服务端和客户端对Spring Environment和PropertySource抽象的映射,所以它除了适用于Spring构建的应用程序,也可以在
阅读全文
摘要:在微服务架构中,我们将系统拆分成了一个个的服务单元,各单元间通过服务注册与订阅的方式互相依赖。由于每个单元都在不同的进程中运行,依赖通过远程调用的方式执行,这样就有可能因为网络原因或是依赖服务自身问题出现调用故障或延迟,而这些问题会直接导致调用方的对外服务也出现延迟,若此时调用方的请求不断增加,最后
阅读全文
摘要:Ribbon Ribbon是一个基于HTTP和TCP客户端的负载均衡器。Feign中也使用Ribbon. Ribbon可以在通过客户端中配置的ribbonServerList服务端列表去轮询访问以达到均衡负载的作用。 当Ribbon与Eureka联合使用时,ribbonServerList会被Dis
阅读全文
摘要:服务发现模块:Eureka 创建服务注册中心 pom依赖 通过@EnableEurekaServer注解启动一个服务注册中心提供给其他应用进行对话,只需要在一个普通的Spring Boot应用中添加这个注解就能开启此功能. 在默认设置下,该服务注册中心也会将自己作为客户端来尝试注册它自己,所以我们需
阅读全文
摘要:Spring Cloud简介 Spring Cloud是一个基于Spring Boot实现的云应用开发工具,为开发者提供了在分布式系统(配置管理,服务发现,熔断,路由,微代理,控制总线,一次性token,全居琐,leader选举,分布式session,集群状态)中快速构建的工具。 SpringClo
阅读全文

浙公网安备 33010602011771号