SpringCloud入门
文章平均质量分 77
Spring Cloud是一个基于Spring Boot实现的云应用开发工具,它为基于JVM的云应用开发中的配置管理、服务发现、断路器、智能路由、微代理、控制总线、全局锁、决策竞选、分布式会话和集群状态管理等操作提供了一种简单的开发方式。
子非鱼yy
求知若饥,虚心若愚
展开
-
史上最简单的 SpringCloud 教程 | 终章
错过了这一篇,你可能再也学不会 Spring Cloud 了!Spring Boot做为下一代 web 框架,Spring Cloud 作为最新最火的微服务的翘楚,你还有什么理由拒绝。赶快上船吧,老船长带你飞。终章不是最后一篇,它是一个汇总,未来还会写很多篇。案例全部采用Spring Boot 1.5.x ,Spring Cloud版本为Dalston.RELEASE我为什么这些文章?一是...转载 2017-09-13 11:27:00 · 131272 阅读 · 1 评论 -
史上最简单的 SpringCloud 教程 | 第一篇: 服务的注册与发现(Eureka)
简单的 SpringCloud 教程 | 第一篇: 服务的注册与发现(Eureka)转载 2017-09-21 17:51:38 · 16909 阅读 · 7 评论 -
史上最简单的SpringCloud教程 | 第二篇: 服务消费者(rest+ribbon)
简单的SpringCloud教程 | 第二篇: 服务消费者(rest+ribbon)转载 2017-09-21 17:53:47 · 15462 阅读 · 6 评论 -
史上最简单的SpringCloud教程 | 第三篇: 服务消费者(Feign)
简单的SpringCloud教程 | 第三篇: 服务消费者(Feign)转载 2017-09-22 11:25:01 · 3802 阅读 · 3 评论 -
史上最简单的SpringCloud教程 | 第四篇:断路器(Hystrix)
转载请标明出处: http://blog.csdn.net/forezp/article/details/69934399在微服务架构中,根据业务来拆分成一个个的服务,服务与服务之间可以相互调用(RPC),在Spring Cloud可以用RestTemplate+Ribbon和Feign来调用。为了保证其高可用,单个服务通常会集群部署。由于网络原因或者自身的原因,服务并不能原创 2017-09-22 11:26:54 · 3968 阅读 · 7 评论 -
史上最简单的SpringCloud教程 | 第五篇: 路由网关(zuul)
转载请标明出处: http://blog.csdn.net/forezp/article/details/69939114 在微服务架构中,需要几个基础的服务治理组件,包括服务注册与发现、服务消费、负载均衡、断路器、智能路由、配置管理等,由这几个基础组件相互协作,共同组建了一个简单的微服务系统。一个简答的微服务系统如下图:注意:A服务和B服务是可以相互调用的,作图的原创 2017-09-22 11:29:36 · 3690 阅读 · 0 评论 -
史上最简单的SpringCloud教程 | 第六篇: 分布式配置中心(Spring Cloud Config)
转载请标明出处: http://blog.csdn.net/forezp/article/details/70037291 在上一篇文章讲述zuul的时候,已经提到过,使用配置服务来保存各个服务的配置文件。它就是Spring Cloud Config。一、简介在分布式系统中,由于服务数量巨多,为了方便服务配置文件统一管理,实时更新,所以需要分布式配置中心组件。在Spri原创 2017-09-22 11:31:12 · 3060 阅读 · 3 评论 -
史上最简单的SpringCloud教程 | 第七篇: 高可用的分布式配置中心(Spring Cloud Config)
转载请标明出处: http://blog.csdn.net/forezp/article/details/70037513 上一篇文章讲述了一个服务如何从配置中心读取文件,配置中心如何从远程git读取配置文件,当服务实例很多时,都从配置中心读取文件,这时可以考虑将配置中心做成一个微服务,将其集群化,从而达到高可用,架构图如下:一、准备工作继续使用上一篇文章的工程,创原创 2017-09-22 11:33:05 · 2553 阅读 · 2 评论 -
史上最简单的SpringCloud教程 | 第八篇: 消息总线(Spring Cloud Bus)
转载请标明出处:http://blog.csdn.net/forezp/article/details/70148235Spring Cloud Bus 将分布式的节点用轻量的消息代理连接起来。它可以用于广播配置文件的更改或者服务之间的通讯,也可以用于监控。本文要讲述的是用Spring Cloud Bus实现通知微服务架构的配置文件的更改。一、准备工作本文还是基于上一篇文章来实现...原创 2017-09-22 11:34:15 · 2150 阅读 · 1 评论 -
史上最简单的SpringCloud教程 | 第九篇: 服务链路追踪(Spring Cloud Sleuth)
转载请标明出处: http://blog.csdn.net/forezp/article/details/70162074这篇文章主要讲述服务追踪组件zipkin,Spring Cloud Sleuth集成了zipkin组件。一、简介Add sleuth to the classpath of a Spring Boot application (see bel原创 2017-09-22 13:00:39 · 1757 阅读 · 2 评论 -
史上最简单的SpringCloud教程 | 第十篇: 高可用的服务注册中心
转载请标明出处: http://blog.csdn.net/forezp/article/details/70183572 文章 史上最简单的 SpringCloud 教程 | 第一篇: 服务的注册与发现(Eureka) 介绍了服务注册与发现,其中服务注册中心Eureka Server,是一个实例,当成千上万个服务向它注册的时候,它的负载是非常高的,这在生产环境上是不太合适原创 2017-09-22 13:03:19 · 1777 阅读 · 1 评论 -
史上最简单的SpringCloud教程 | 第十一篇: docker部署spring cloud项目
一、docker简介Docker是一个开源的引擎,可以轻松的为任何应用创建一个轻量级的、可移植的、自给自足的容器。开发者在笔记本上编译测试通过的容器可以批量地在生产环境中部署,包括VMs(虚拟机)、bare metal、OpenStack 集群和其他的基础应用平台。Docker通常用于如下场景:web应用的自动化打包和发布; 自动化测试和持续集成、发布; 在服务型环境中部署和调整数据...原创 2017-09-23 12:41:03 · 2215 阅读 · 1 评论 -
史上最简单的SpringCloud教程 | 第十二篇: 断路器监控(Hystrix Dashboard)
在我的第四篇文章断路器讲述了如何使用断路器,并简单的介绍了下Hystrix Dashboard组件,这篇文章更加详细的介绍Hystrix Dashboard。一、Hystrix Dashboard简介在微服务架构中为例保证程序的可用性,防止程序出错导致网络阻塞,出现了断路器模型。断路器的状况反应了一个程序的可用性和健壮性,它是一个重要指标。Hystrix Dashboard是作为断路器状态原创 2017-09-23 12:44:03 · 2954 阅读 · 0 评论 -
史上最简单的SpringCloud教程 | 第十三篇: 断路器聚合监控(Hystrix Turbine)
上一篇文章讲述了如何利用Hystrix Dashboard去监控断路器的Hystrix command。当我们有很多个服务的时候,这就需要聚合所以服务的Hystrix Dashboard的数据了。这就需要用到Spring Cloud的另一个组件了,即Hystrix Turbine。一、Hystrix Turbine简介看单个的Hystrix Dashboard的数据并没有什么多大的价值,要原创 2017-09-23 12:45:43 · 2426 阅读 · 0 评论 -
史上最简单的 SpringCloud 教程 | 第十四篇: 服务注册(consul)
这篇文章主要介绍 spring cloud consul 组件,它是一个提供服务发现和配置的工具。consul具有分布式、高可用、高扩展性。一、consul 简介consul 具有以下性质:服务发现:consul通过http 方式注册服务,并且服务与服务之间相互感应。服务健康监测key/value 存储多数据中心consul可运行在mac windows linux 等机器上。原创 2017-09-23 12:47:22 · 1764 阅读 · 0 评论 -
Spring Cloud Sleuth进阶实战
为什么需要Spring Cloud Sleuth微服务架构是一个分布式架构,它按业务划分服务单元,一个分布式系统往往有很多个服务单元。由于服务单元数量众多,业务的复杂性,如果出现了错误和异常,很难去定位。主要体现在,一个请求可能需要调用很多个服务,而内部服务的调用复杂性,决定了问题难以定位。所以微服务架构中,必须实现分布式链路追踪,去跟进一个请求到底有哪些服务参与,参与的顺序又是怎样的,从而达原创 2017-09-24 13:50:15 · 2471 阅读 · 0 评论 -
深入理解Feign之源码解析
什么是FeignFeign是受到Retrofit,JAXRS-2.0和WebSocket的影响,它是一个jav的到http客户端绑定的开源项目。 Feign的主要目标是将Java Http 客户端变得简单。Feign的源码地址:https://github.com/OpenFeign/feign写一个Feign在我之前的博文有写到如何用Feign去消费服务,文章地址:http://bl原创 2017-09-24 15:47:09 · 1458 阅读 · 0 评论 -
深入理解Eureka之源码解析
Eureka的一些概念Register:服务注册 当Eureka客户端向Eureka Server注册时,它提供自身的元数据,比如IP地址、端口,运行状况指示符URL,主页等。Renew:服务续约 Eureka客户会每隔30秒发送一次心跳来续约。 通过续约来告知Eureka Server该Eureka客户仍然存在,没有出现问题。 正常情况下,如果Eureka Serve原创 2017-09-24 15:50:15 · 1623 阅读 · 1 评论 -
深入理解Ribbon之源码解析
什么是RibbonRibbon是Netflix公司开源的一个负载均衡的项目,它属于上述的第二种,是一个客户端负载均衡器,运行在客户端上。它是一个经过了云端测试的IPC库,可以很好地控制HTTP和TCP客户端的一些行为。 Feign已经默认使用了Ribbon。负载均衡容错多协议(HTTP,TCP,UDP)支持异步和反应模型缓存和批处理 RestTemplate和Ribbon相结合原创 2017-09-24 15:53:07 · 1124 阅读 · 0 评论 -
深入理解Hystrix之文档翻译
什么是Hystrix在分布式系统中,服务与服务之间依赖错综复杂,一种不可避免的情况就是某些服务将会出现失败。Hystrix是一个库,它提供了服务与服务之间的容错功能,主要体现在延迟容错和容错,从而做到控制分布式系统中的联动故障。Hystrix通过隔离服务的访问点,阻止联动故障,并提供故障的解决方案,从而提高了这个分布式系统的弹性。Hystrix解决了什么问题在复杂的分布式系统中,可能有原创 2017-09-24 15:56:50 · 1023 阅读 · 0 评论 -
深入理解Zuul之源码解析
Zuul 架构图在zuul中, 整个请求的过程是这样的,首先将请求给zuulservlet处理,zuulservlet中有一个zuulRunner对象,该对象中初始化了RequestContext:作为存储整个请求的一些数据,并被所有的zuulfilter共享。zuulRunner中还有 FilterProcessor,FilterProcessor作为执行所有的zuulfilter的管理原创 2017-09-24 15:58:16 · 1183 阅读 · 0 评论