
Spring Cloud
平凡的L同学
个人感兴趣的方向:云计算网络,SDN,网络操作系统,量子通信,机器学习,欢迎讨论。
展开
-
初识Spring Cloud--声明式REST客户端(Feign)
在前面的实践中,我们都是通过 RestTemplate来实现对远程服务的调用,但是在代码的编写上并不美观,Spring Cloud给出了另一套方案,也即是本篇中提到的Feign,Spring Cloud Feign 是基于Netflix Feign 实现的。那么,怎么实现咧?依然使用前面的架构,不同的是,这次我们通过Feign来实现:1.新建工程sc07,并添加Feign相关的依赖:...原创 2018-12-08 22:47:24 · 312 阅读 · 0 评论 -
初识Spring Cloud--Eureka服务注册中心搭建
首先,来认识一下SpringCloud:Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理、服务发现、断路器、智能路由、微代理、控制总线、一次性令牌、全局锁、领导选举、分布式会话、集群状态)。分布式系统的协调导致了样板模式,使用Spring Cloud开发人员可以快速建立实现这些模式的服务和应用程序。它们可以在任何分布式环境中很好地工作,包括开发人员自...原创 2018-11-29 22:49:46 · 455 阅读 · 0 评论 -
初识Spring Cloud--Ribbon客户端负载均衡
首先来看一下Ribbon的作用:ribbon 是一个客户端负载均衡器,主要是实现类似于 nginx的负载均衡的功能。SpringCloud提供了7种负载均衡的算法,如下表所示,ribbon 默认使用轮询算法(RoundRobinRule)来实现负载均衡,策略名 策略声明 策略描述 实现说明 BestAvailableRule public class B...原创 2018-12-04 00:12:27 · 480 阅读 · 0 评论 -
初识Spring Cloud--微服务网关实现之zuul
在spring cloud中,zuul主要担任服务网关的角色(现已被Spring Cloud Gateway所取代),可以将外部的请求分发到不同的微服务上去,官网上有一张图片,可以直观的展示zuul的功能,其中的API Gateway便是今天的主角--zuul。为了使用这个服务网关功能,首先,我们需要创建一个新项目sc09,并指定端口号为8996,设定服务名称为service09。要使...原创 2018-12-14 23:01:53 · 352 阅读 · 0 评论 -
初识Spring Cloud--分布式配置中心实践
在一个分布式的微服务集群中,各个服务的数量可能有成百上千,管理成本将非常大,这时候就迫切需要一个统一的配置和管理中心,spring cloud就提供了一套集中式的配置中心方案,下面是配置中心的示意图:依照上边的原理图,我们首先来实现config-server,也即配置中心的服务端:创建项目sc10,导入相关的依赖:<dependency> <grou...原创 2018-12-15 23:25:51 · 368 阅读 · 0 评论 -
初识Spring Cloud--利用Hystrix实现服务的熔断及降级
在分布式的系统中,服务与服务之间有可能会存在依赖的情况,这时候就会出现一些问题,比方说服务A依赖于服务B,服务B又依赖于服务C,这个时候如果服务C出现了问题,那么久而久之服务B也会也会逐渐被服务C“拖垮”,进而,服务A也会逐渐出现问题(又称雪崩效应);所以我们迫切的需要一种“快速失败”的机制,告诉客户,我这个服务出现了问题,不再提供服务。为了实现这种快速失败的机制,spring cloud提供...原创 2018-12-13 23:43:41 · 795 阅读 · 0 评论 -
初识Spring Cloud--Spring Cloud Bus在服务配置中心的简单应用
前面对配置中心进行了讲解,我们可以很明显的感受到使用spring cloud在处理配置方面的便捷性,然而,当托管到git等工具上的配置一旦发生变化,若采用前面的架构我们的每一个客户端都需要发送一遍请求,这势必会照成一些问题,这时候,spring cloud bus横空出世了。下面,我们直接进入正题,通过一个简单的例子来进行测试:首先,我们需要做一些准备的工作:安装zookeeper和kaf...原创 2019-03-31 12:19:54 · 295 阅读 · 0 评论