Spring Cloud Finchley
文章平均质量分 90
hubo_88
这个作者很懒,什么都没留下…
展开
-
Spring Cloud 应用篇 之 Spring Cloud Sleuth + Zipkin(三)修改数据存储方式
(一)简介默认情况下,Zipkin Server 会将跟踪信息存储在内存中,每次重启 Zipkin Server 都会使之前收集的跟踪信息丢失,并且当有大量跟踪信息时,内存存储也会造成性能瓶颈,所以通常我们都需要将跟踪信息存储到外部组件中,如 Mysql。由于 Spring Boot 2.0 之后 Zipkin 不再推荐我们来自定义 Server 端了,那么如何把 Zipkin Server 修改...原创 2018-07-02 23:15:53 · 3906 阅读 · 0 评论 -
Spring Cloud 应用篇 之 Spring Cloud Stream(消息驱动)
(一)简介Spring Cloud Stream 是一个用来为微服务应用构建消息驱动能力的框架。它可以基于 Spring Boot 来创建独立的、可用于生产的 Spring 应用程序。Spring Cloud Stream 为一些供应商的消息中间件产品提供了个性化的自动化配置实现,并引入了发布-订阅、消费组、分区这三个核心概念。通过使用 Spring Cloud Stream,可以有效简化开发人员...原创 2018-07-03 23:39:09 · 38957 阅读 · 10 评论 -
Spring Cloud 应用篇 之 Eureka 初体验
(一)Spring Cloud 简介Spring Cloud是一系列框架的有序集合。它利用Spring Boot的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册、配置中心、消息总线、负载均衡、断路器、数据监控等,都可以用Spring Boot的开发风格做到一键启动和部署。Spring Cloud并没有重复制造轮子,它只是将目前各家公司开发的比较成熟、经得起实际考验的服务框架组合起来...原创 2018-05-31 13:07:26 · 1688 阅读 · 5 评论 -
Spring Cloud 应用篇 之 Ribbon 的基本使用
上一篇文章初步体验了 Eureka 的基本使用,讲了关于服务的注册与发现。这一篇主要讲解基于 Ribbon 实现的服务调用。(一)简介Spring Cloud Ribbon 是一个基于 Http 和 TCP 的客服端负载均衡工具,它是基于 Netflix Ribbon 实现的。客户端负载均衡即是当浏览器向后台发出请求的时候,客户端会向 Eureka Server 读取注册到服务器的可用服务信息列表...原创 2018-06-03 23:06:45 · 4150 阅读 · 1 评论 -
Spring Cloud 应用篇 之 Feign 的基本使用
上一篇中介绍了 Ribbon 的基本使用,将来使用 Ribbon 调用服务,下面讲解如何使用 Feign 调用服务,并配置负载均衡策略。(一)简介Spring Cloud Feign 基于 Netflix Feign 实现的,整理 Spring Cloud Ribbon 与 Spring Cloud Hystrix,默认实现了负载均衡功能,并且实现了声明式的伪Http客户端,Feign 是基于接口...原创 2018-06-04 16:24:22 · 4636 阅读 · 0 评论 -
Spring Cloud 应用篇 之 Hystrix 的基本使用
在微服务架构中,我们会将系统根据业务垂直拆分为很多服务,各个服务之间通过注册与订阅的方式相互依赖。但是由于网络出现不稳定或自身服务出现异常,导致调用故障或延迟,此时若并发量很大,可能会导致服务崩溃。断路器 Hystrix 就是解决此问题的。(一)简介Spring Cloud Hystrix 是基于 Netflix 的开源框架 Hystrix 实现的,它具有断路器、线路隔离等一系列服务保护功能。Hy...原创 2018-06-05 22:03:58 · 1281 阅读 · 0 评论 -
Spring Cloud 应用篇 之 Hystrix Dashboard(断路器监控) 的基本搭建
在以往的文章里,已经讲解了 断路器 Hystrix 的基本使用,现在将介绍断路器的监控 Hystrix Dashboard 的基本搭建。(一)简介Hystrix Dashboard 是 Hystrix 的仪表盘组件,提供了数据监控,可以实时监控 Hystrix 的各个指标,然后通过图形化界面展示出来。(二)搭建环境1. 创建一个module(spring-cloud-hystrix-dashboa...原创 2018-06-06 18:28:24 · 4106 阅读 · 3 评论 -
Spring Cloud 应用篇 之 Hystrix Turbine(断路器聚合监控)的基本搭建
在讲解了 Hystrix Dashboard 之后,我们知道了,Hystrix Dashboard 实现的是单节点模式,一次只能监控一个服务,当有很多服务的时候,这样单节点模式去监控,就需要打开多个浏览器窗口,显然这是很麻烦的。这个时候,我们就可以用到 Spring Cloud 的另一个组件 Turbine,它可以聚合多个服务的 Hystrix Dashboard 的数据用以显示。(一)简介Tur...原创 2018-06-08 15:42:08 · 2024 阅读 · 0 评论 -
Spring Cloud 应用篇 之 Eureka 高可用
在 Spring Cloud 应用篇 之 Eureka 初体验 一文中,已经介绍了 Eureka 的基本使用了,但是之前 Eureka 只使用了单节点部署,生产上,不可能只有一个节点,所以我们要实现 Eureka 的高可用,本例就在此前代码的基础上进行修改,只部署两个节点。下面进行修改:(一)修改配置文件如下,让两个 Eureka 互相向对方注册spring: profiles: ac...原创 2018-06-09 16:14:20 · 1086 阅读 · 1 评论 -
解决 Spring Cloud 的服务应用配置 context-path 后 Spring Boot Admin 监控不到信息的问题
在上篇文章中,讲解了 Spring Cloud 服务使用 Spring Boot Admin 监控的搭建,但是我在做公司的传统项目改造成微服务架构的过程中,在搭建 Spring Boot Admin 的时候,遇到了一个坑,有个服务配置了 context-path 这个属性,导致 Spring Boot Admin 一直获取不到这个服务的端点信息(当时我对 Spring Boot Admin 的使用...原创 2018-06-13 21:33:31 · 36127 阅读 · 7 评论 -
Spring Cloud 应用篇 之 Spring Cloud Config(配置中心)
从前几篇文章中我们就可以看出,在分布式系统中,服务数量会很多,如果要修改服务的配置文件,会很麻烦,这个时候,我们想把配置文件放在一个地方统一管理,实时更新,Spring Cloud 就给我们提供了这样一个组件——Spring Cloud Config。(一)简介Spring Cloud Config 支持配置文件放在远程仓库中,例如 Git、SVN,也可以挂载到本地。Spring Cloud Co...原创 2018-06-14 16:01:02 · 6015 阅读 · 7 评论 -
Spring Cloud Config 的端口 port 不是 8888 的时候的坑
上一篇文章 Spring Cloud 应用篇 之 Spring Cloud Config(配置中心)末留了一个尾巴,当你配置的配置中心的 server.port 不是 8888 的时候,其他服务就起不来了,从日志中可以发现,服务启动的时候,Fetching config from server at: http://localhost:8888,说明其他服务还是去 8888 这个默认端口取配置中心...原创 2018-06-18 22:12:20 · 17475 阅读 · 11 评论 -
Spring Cloud Config + Spring Cloud Bus 实现配置文件动态刷新(版本 Finchley.RC1)
Spring Cloud 应用篇 之 Spring Cloud Config(配置中心)一文中介绍了 Spring Cloud Config 的使用,已经实现了配置文件的统一管理(git 仓库),但是,每次修改配置文件后,还需要重新启动应用才能加载到修改后的配置文件,这还没有达到我们的目的,我们最终想要的是,修改完配置文件后,不需要重启我们的应用,就可以重新加载到修改后的配置文件,其实 Sprin...原创 2018-06-23 19:06:34 · 6593 阅读 · 6 评论 -
Spring Cloud 应用篇 之 Spring Cloud Zuul(一)路由功能
微服务架构中,是很多微小的服务组成,那么调用这些服务接口,如果直接调用每个服务提供的接口,是不现实的,这个时候我们就需要一个请求的统一入口,也就是服务网关,而 Spring Cloud 已为我们提供了 Zuul。(一)简介Zuul 的特点是路由+过滤器,核心是一系列的过滤器,Zuul 定义了四种过滤器前置(Pre)路由(Route)后置(Post)错误(Error)Zuul 默认集成 Ribbon...原创 2018-06-28 22:34:53 · 2832 阅读 · 0 评论 -
Spring Cloud 应用篇 之 Spring Cloud Zuul(二)过滤功能
在上一篇 Spring Cloud 应用篇 之 Spring Cloud Zuul(一)路由功能 中,讲解了 Zuul 的路由功能,这一篇讲解 Zuul 的请求过滤功能。(一)简介Zuul 允许开发者在 API 网关上通过定义过滤器来实现对请求的拦截与过滤,实现的方法非常简单,我们只需继承 ZuulFilter 抽象类并实现它定义的 4 个 抽象函数就可以完成对请求的拦截和过滤了。Zuul 定义了...原创 2018-06-29 22:40:49 · 801 阅读 · 0 评论 -
Spring Cloud 应用篇 之 Spring Cloud Sleuth + Zipkin(一)链路监控
在微服务系统中,随着业务的发展,系统会变得越来越大,那么各个服务之间的调用关系也就变得越来越复杂。一个 HTTP 请求会调用多个不同的微服务来处理返回最后的结果,在这个调用过程中,可能会因为某个服务出现网络延迟过高或发送错误导致请求失败,这个时候,对请求调用的监控就显得尤为重要了。Spring Cloud Sleuth 提供了分布式服务链路监控的解决方案。下面介绍 Spring Cloud Sle...原创 2018-07-02 09:07:15 · 9458 阅读 · 1 评论 -
Spring Cloud 应用篇 之 Spring Cloud Sleuth + Zipkin(二)集成 RabbitMQ
在上一篇 Spring Cloud 应用篇 之 Spring Cloud Sleuth + Zipkin(一)链路监控 中,我们知道了 Spring Boot 2.0 之后Zipkin 不再推荐我们来自定义 Server 端了,那么集成 RabbitMQ 时,如何才能用官方提供的 jar 包启动后从 RabbitMQ 中获取链路跟踪信息呢?(一)Zipkin Server 的启动根据官方给的方式,...原创 2018-07-02 21:45:40 · 6102 阅读 · 4 评论 -
解决 Spring Cloud 的服务应用配置 context-path 后 Spring Cloud Hystrix Turbine 监控不到信息的问题
在 Spring Cloud 应用篇 之 Hystrix Turbine(断路器聚合监控)的基本搭建 这篇文章中,讲解了 Spring Cloud Hystrix Turbine 集群监控服务,但是,如果被监控的服务配置了 context-path 这个属性,那么,你的监控就会出现问题,就如同 Spring Boot Admin 监控出现的问题一样,关于 Spring Boot Admin 的这个...原创 2018-08-31 16:00:54 · 5896 阅读 · 3 评论