随笔分类 - spring cloud
摘要:Zuul的高可用非常关键,因为外部请求到后端微服务的流量都会经过Zuul。故而在生产环境中,我们一般都需要部署高可用的Zuul以避免单点故障。 笔者分两种场景讨论Zuul的高可用。 Zuul客户端也注册到了Eureka Server上 这种情况下,Zuul的高可用非常简单,只需将多个Zuul节点注册
阅读全文
摘要:Ribbon配置 在Feign中配置Ribbon非常简单,直接在application.properties中配置即可,如: 同样也可以指定服务配置,直接在application.properties中采用.ribbon.key=value的格式进行配置,如下: 在SpringCloudFeign中
阅读全文
摘要:一、容错:Zuul回退 如果微服务下线了,针对每个微服务,都需要回复一个中文提示,而不是报异常 1、新建ConsumerFallbackProvider.java 2、效果 二、Zuul过滤器 zuul还提供了过滤功能, 只要实现接口ZuulFilter即可对请求先进行筛选和过滤之后再路由到具体服务
阅读全文
摘要:在微服务架构中,需要几个关键的组件,服务注册与发现、服务消费、负载均衡、断路器、智能路由、配置管理等,由这几个组件可以组建一个简单的微服务架构。客户端的请求首先经过负载均衡(zuul、Ngnix),再到达服务网关(zuul集群),然后再到具体的服务,服务统一注册到高可用的服务注册中心集群,服务的所有
阅读全文
摘要:我们提到断路器是根据一段时间窗内的请求情况来判断并操作断路器的打开和关闭状态的。而这些请求情况的指标信息都是HystrixCommand和HystrixObservableCommand实例在执行过程中记录的重要度量信息,它们除了Hystrix断路器实现中使用之外,对于系统运维也有非常大的帮助。这些
阅读全文
摘要:所谓的熔断机制和日常生活中见到电路保险丝是非常相似的,当出现了问题之后,保险丝会自动烧断,以保护我们的电器, 那么如果换到了程序之中呢? 当现在服务的提供方出现了问题之后整个的程序将出现错误的信息显示,而这个时候如果不想出现这样的错误信息,而希望替换为一个错误时的内容。 一个服务挂了后续的服务跟着不
阅读全文
摘要:一、覆写fegin的默认配置 1、新增配置类FeignConfiguration.java 需要之一的是此配置文件不能再spring cloud扫描包的路径下,否则会有问题出现 2、定义一个FeignClient2.java @RequestLine("GET /getDate/{id}") pub
阅读全文
摘要:在Spring Cloud Netflix栈中,各个微服务都是以HTTP接口的形式暴露自身服务的,因此在调用远程服务时就必须使用HTTP客户端。Feign就是Spring Cloud提供的一种声明式REST客户端。可以通过Feign访问调用远端微服务提供的REST接口。现在我们就用Feign来调用S
阅读全文
摘要:一、自定义Ribbon客户端-【方式一】配置类 1.1、自定义负载规则 增加RibbonConfiguration.java配置类 其中:RibbonClient中name 微服务名称,configuration配置类 注意:configuration等于的TestConfiguration必须是@
阅读全文
摘要:假如我们的multiple服务的访问量剧增,用一个服务已经无法承载, 我们可以把Hello World服务做成一个集群。 很简单,我们只需要复制Hello world服务,同时将原来的端口8762修改为8763。然后启动这两个Spring Boot应用, 就可以得到两个Hello World服务。这
阅读全文
摘要:Spring Cloud Bus提供了批量刷新配置的机制,它使用轻量级的消息代理(例如RabbitMQ、Kafka等)连接分布式系统的节点,这样就可以通过Spring Cloud Bus广播配置的变化或者其他的管理指令。使用Spring Cloud Bus后的架构如图9-2所示。 图9-2 使用Sp
阅读全文
摘要:概述 之前我们简单的搭建了一个单点的config-server服务,实现配置文件的统一管理,本次文章将实现config-client是如何从config-server中获取到统一配置文件信息的 1.创建springcloud--ssmServer服务 此服务是之前的springBoot继承了myba
阅读全文
摘要:概述 使用Config Server,您可以在所有环境中管理应用程序的外部属性。客户端和服务器上的概念映射与Spring Environment和PropertySource抽象相同,因此它们与Spring应用程序非常契合,但可以与任何以任何语言运行的应用程序一起使用。随着应用程序通过从开发人员到测
阅读全文
摘要:Spring Cloud中,Eureka常见问题总结。 指定Eureka的Environment 1 eureka.environment: 指定环境 参考文档:https://github.com/Netflix/eureka/wiki/Configuring-Eureka 指定Eureka的Da
阅读全文
摘要:Home进入Eureka控制台首页,首先看HOME页的头部 System Status Environment : 环境,默认为test, 该参数在实际使用过程中,可以不用更改 Data center : 数据中心,使用的是默认的是 “MyOwn” Current time:当前的系统时间 Upti
阅读全文
摘要:1.创建springcloud-eureka maven项目 pom.xml 2.启动类EurekaServerApplication.java 3.创建application-peer1.properties向peer2注册中心注册,把peer1注册中心当做一个client注册上去 applica
阅读全文
摘要:在Spring Cloud实现一个Eureka Server是一件非常简单的事情。下面我们来写一个Eureka Server DEMO。 编码 父项目pom.xml maven子项目 springcloud-eureka pom.xml (2) 编写启动类,在启动类上添加@EnableEurekaS
阅读全文
摘要:Eureka是Netflix开发的服务发现组件,本身是一个基于REST的服务。Spring Cloud将它集成在其子项目spring-cloud-netflix中,以实现Spring Cloud的服务发现功能。目前Eureka 项目相当活跃,代码更新相当频繁,目前最新的版本是1.9.8。Eureka
阅读全文